import type { ActionContext, ComponentManifest, ComponentRegistry, ConfigVarResultCollection, DebugContext, FlowInvoker } from "../types";
import type { ActionContext as ServerActionContext } from ".";
export declare function createCNIContext<TConfigVars extends ConfigVarResultCollection = ConfigVarResultCollection, TComponentActions extends Record<string, ComponentManifest["actions"]> = Record<string, ComponentManifest["actions"]>, TFlows extends string[] = string[]>(context: ActionContext<TConfigVars, TComponentActions, TFlows>, componentRegistry: ComponentRegistry): ActionContext<TConfigVars, TComponentActions, TFlows>;
export declare function createDebugContext(context: ServerActionContext): DebugContext;
export declare function logDebugResults(context: ActionContext): void;
export declare const createInvokeFlow: <const TFlows extends Readonly<string[]>>(context: ActionContext, options?: {
    isCNI?: boolean;
}) => FlowInvoker<TFlows>;
