export type AgentRuntimeInstancePhase = "created" | "ready" | "paused" | "closed" | "failed";
export type AgentRuntimeInstanceCaller = "application" | "official-module" | "runtime" | "inspection" | "debug";
export type AgentRuntimeInstanceBoundary = "input" | "contract" | "governance" | "runtime-state" | "scope";
export type AgentRuntimeInstanceGate = {
    accepted: boolean;
    reason?: string;
};
export type AgentRuntimeInstanceTrace = {
    correlationId?: string;
    sessionId?: string;
    callerId?: string;
};
export type AgentRuntimeInstanceRequest = {
    runtimeId?: string;
    agentId?: string;
    caller?: AgentRuntimeInstanceCaller;
    phase?: AgentRuntimeInstancePhase | string;
    mountedSurfaces?: readonly string[];
    requiredSurfaces?: readonly string[];
    capabilityKeys?: readonly string[];
    trace?: AgentRuntimeInstanceTrace;
    contract?: AgentRuntimeInstanceGate;
    governance?: AgentRuntimeInstanceGate;
};
export type AgentRuntimeInstanceErrorCode = "MISSING_RUNTIME_ID" | "MISSING_AGENT_ID" | "MISSING_CALLER" | "UNSUPPORTED_PHASE" | "RUNTIME_NOT_READY" | "SURFACE_NOT_MOUNTED" | "CONTRACT_REJECTED" | "GOVERNANCE_REJECTED";
export type AgentRuntimeInstanceError = {
    code: AgentRuntimeInstanceErrorCode;
    message: string;
    boundary: AgentRuntimeInstanceBoundary;
    stateSafe: true;
};
export type AgentRuntimeInstanceSnapshot = {
    runtimeId: string;
    agentId: string;
    caller: AgentRuntimeInstanceCaller;
    phase: "ready";
    mountedSurfaces: readonly string[];
    requiredSurfaces: readonly string[];
    capabilityKeys: readonly string[];
    trace: AgentRuntimeInstanceTrace;
    dryRun: true;
    unsafeSideEffects: false;
};
export type AgentRuntimeInstanceResult = {
    ok: true;
    instance: AgentRuntimeInstanceSnapshot;
    events: readonly string[];
} | {
    ok: false;
    error: AgentRuntimeInstanceError;
    events: readonly string[];
};
export declare function createAgentRuntimeInstanceSnapshot(request: AgentRuntimeInstanceRequest): AgentRuntimeInstanceResult;
