import { Invoker } from './invoker'; import type { ProviderGettersOption, ScopeKeyExtractor } from './invoker.types'; import { AppLocalInstance } from '../app/instances'; import { Scope } from '../scope'; import { FlowName } from '@frontmcp/sdk'; export declare function compileScopeExtractor(overrides?: ScopeKeyExtractor): ScopeKeyExtractor; export declare function makeRouteInvoker(scope: Scope, namespace: FlowName, opts?: { /** Optional app context (e.g., when executing a tool in an app) */ app?: AppLocalInstance; scopeKeys?: ScopeKeyExtractor; /** inject custom provider getters; use `before` to override, `after` for lower precedence */ providerGetters?: ProviderGettersOption; }): { invoker: Invoker; baseExtras: { scope: Scope; app: AppLocalInstance | undefined; pluginHooksByStage: Partial[]>>; apps: AppLocalInstance[]; }; };