import 'runtime_external_code_agents.dart'; class RuntimeDispatchResolution { const RuntimeDispatchResolution({ required this.metadata, this.agentId, this.providerId, this.raw = const {}, }); final String? agentId; final String? providerId; final Map metadata; final Map raw; } abstract class RuntimeDispatchResolver { Future selectProviderId({ required List providers, String preferredProviderId = '', Iterable requiredCapabilities = const [], }); Future resolveGatewayDispatch({ required List providers, required String preferredProviderId, required Iterable requiredCapabilities, required Map nodeState, required Map nodeInfo, }); Future dispose(); }