import type { ActionDeepLink, ActionLinkBuilder, ActionMcpAppConfig } from "../action.js"; import { type EmbedAppOptions } from "./embed-app.js"; export interface EmbedRouteContext = Record, TResult = any> { args: TArgs; result: TResult; } export type EmbedRoutePathBuilder = Record, TResult = any> = (ctx: EmbedRouteContext) => string | ActionDeepLink | null | undefined; export interface EmbedRouteOptions = Record, TResult = any> extends Pick { title: string; openLabel: string; /** Build the app route or full deep-link surfaced after an action completes. */ path: EmbedRoutePathBuilder; } export interface EmbedRouteResult { link: ActionLinkBuilder; mcpApp: ActionMcpAppConfig; } /** * Create matching action `link` and `mcpApp` metadata for an embeddable route. * * The `path` builder stays pure and synchronous, just like action link * builders. Return an app-relative path string for the common case, or an * `ActionDeepLink` when you need a custom label/view. */ export declare function embedRoute = Record, TResult = any>(options: EmbedRouteOptions): EmbedRouteResult; //# sourceMappingURL=embed-route.d.ts.map