export type OfficialPoolRuntimeBridgeBoundary = "input" | "contract" | "governance" | "runtime-state" | "bridge" | "scope";
export type OfficialPoolRuntimeBridgeCallerKind = "application" | "official-module" | "runtime-surface" | "inspection" | "debug" | "test";
export type OfficialPoolRuntimeBridgeCaller = {
    kind: OfficialPoolRuntimeBridgeCallerKind;
    id: string;
    moduleId?: string;
    sessionId?: string;
};
export type OfficialPoolRuntimeBridgeGate = {
    accepted: boolean;
    reason?: string;
};
export type OfficialPoolModuleKind = "CMP" | "MP" | "TAP" | "multiagent" | (string & {});
export type OfficialPoolBridgeChannel = "interface" | "rule" | "governance" | "invocation" | "inspection" | (string & {});
export type OfficialPoolModuleRef = {
    moduleId?: string;
    moduleKind?: OfficialPoolModuleKind;
    interfaceId?: string;
    ruleRef?: string;
    bridgeChannels?: readonly OfficialPoolBridgeChannel[];
    requestedScopes?: readonly string[];
};
export type OfficialPoolInput = {
    poolId?: string;
    modules?: readonly OfficialPoolModuleRef[];
    metadata?: Readonly<Record<string, unknown>>;
};
export type OfficialPoolRuntimeBridgeRequest = {
    runtimeId?: string;
    caller?: OfficialPoolRuntimeBridgeCaller;
    bridgeId?: string;
    officialPool?: OfficialPoolInput;
    requestedScopes?: readonly string[];
    allowedScopes?: readonly string[];
    channelAvailability?: Partial<Record<OfficialPoolBridgeChannel, boolean>>;
    runtimeReady?: boolean;
    contract?: OfficialPoolRuntimeBridgeGate;
    governance?: OfficialPoolRuntimeBridgeGate;
    traceId?: string;
};
export type OfficialPoolRuntimeBridgeErrorCode = "MISSING_RUNTIME_ID" | "MISSING_CALLER" | "MISSING_BRIDGE_ID" | "MISSING_OFFICIAL_POOL" | "MISSING_POOL_ID" | "EMPTY_OFFICIAL_MODULES" | "MISSING_MODULE_ID" | "MISSING_MODULE_KIND" | "MISSING_INTERFACE_ID" | "RUNTIME_NOT_READY" | "CONTRACT_REJECTED" | "GOVERNANCE_REJECTED" | "SCOPE_DENIED" | "CHANNEL_UNAVAILABLE";
export type OfficialPoolRuntimeBridgeError = {
    code: OfficialPoolRuntimeBridgeErrorCode;
    message: string;
    boundary: OfficialPoolRuntimeBridgeBoundary;
    publicSafe: true;
    internalDetailExposed: false;
};
export type OfficialPoolRuntimeBridgeModule = {
    moduleId: string;
    moduleKind: OfficialPoolModuleKind;
    interfaceId: string;
    ruleRef?: string;
    bridgeChannels: readonly OfficialPoolBridgeChannel[];
    acceptedScopes: readonly string[];
};
export type OfficialPoolRuntimeBridgePlan = {
    bridgeId: string;
    runtimeId: string;
    poolId: string;
    caller: OfficialPoolRuntimeBridgeCaller;
    route: "runtime.interfaceAdapter.officialPoolRuntimeBridge";
    modules: readonly OfficialPoolRuntimeBridgeModule[];
    moduleIds: readonly string[];
    moduleKinds: readonly OfficialPoolModuleKind[];
    interfaceIds: readonly string[];
    channelNames: readonly OfficialPoolBridgeChannel[];
    metadata: Readonly<Record<string, unknown>>;
    traceId?: string;
    dispatch: "dry-run";
    mockableEnvelope: true;
    officialStrategyIncluded: false;
    contractChecked: true;
    governanceChecked: true;
    unsafeSideEffects: false;
};
export type OfficialPoolRuntimeBridgeResult = {
    ok: true;
    plan: OfficialPoolRuntimeBridgePlan;
    events: readonly string[];
} | {
    ok: false;
    error: OfficialPoolRuntimeBridgeError;
    events: readonly string[];
};
export declare const officialPoolRuntimeBridgeDescriptor: {
    readonly route: "runtime.interfaceAdapter.officialPoolRuntimeBridge";
    readonly purpose: "bridge official module interface pool references into runtime.interfaceAdapter without executing module strategy";
    readonly dispatch: "dry-run";
    readonly unsafeSideEffects: false;
};
export declare function createOfficialPoolRuntimeBridge(request?: OfficialPoolRuntimeBridgeRequest): OfficialPoolRuntimeBridgeResult;
