export type RuntimeModuleInspectorBoundary = "input" | "contract" | "governance" | "runtime-state" | "scope";
export type RuntimeModuleStatus = "mounted" | "unmounted" | "degraded";
export type RuntimeModuleInspectorErrorCode = "MISSING_RUNTIME_ID" | "MISSING_MODULE_ID" | "RUNTIME_NOT_READY" | "CONTRACT_REJECTED" | "GOVERNANCE_REJECTED" | "SCOPE_DENIED";
export type RuntimeModuleInspectorGate = {
    accepted: boolean;
    reason?: string;
};
export type RuntimeModuleAttachment = {
    moduleId?: string;
    kind?: string;
    mounted?: boolean;
    required?: boolean;
    health?: "ready" | "degraded" | "failed";
    surfaces?: readonly string[];
    capabilities?: readonly string[];
};
export type RuntimeModuleInspectorRequest = {
    runtimeId?: string;
    moduleId?: string;
    modules?: readonly RuntimeModuleAttachment[];
    requestedScopes?: readonly string[];
    allowedScopes?: readonly string[];
    runtimeReady?: boolean;
    contract?: RuntimeModuleInspectorGate;
    governance?: RuntimeModuleInspectorGate;
    inspectedAt?: string;
};
export type RuntimeModuleInspection = {
    runtimeId: string;
    moduleId: string;
    kind?: string;
    status: RuntimeModuleStatus;
    mounted: boolean;
    required: boolean;
    health: "ready" | "degraded" | "failed" | "unknown";
    surfaces: readonly string[];
    capabilities: readonly string[];
    missingRequiredModule: boolean;
    acceptedScopes: readonly string[];
    inspectedAt: string;
    surface: "runtime.inspection.runtimeModuleInspector";
    unsafeSideEffects: false;
};
export type RuntimeModuleInspectorError = {
    code: RuntimeModuleInspectorErrorCode;
    message: string;
    boundary: RuntimeModuleInspectorBoundary;
    safeForRuntimeInspection: true;
};
export type RuntimeModuleInspectorResult = {
    ok: true;
    inspection: RuntimeModuleInspection;
    events: readonly string[];
} | {
    ok: false;
    error: RuntimeModuleInspectorError;
    events: readonly string[];
};
export declare const runtimeModuleInspectorDescriptor: {
    readonly surface: "runtime.inspection";
    readonly capability: "runtimeModuleInspector";
    readonly purpose: "inspect a mounted runtime module through a readonly attachment snapshot";
    readonly unsafeSideEffects: false;
};
export declare function inspectRuntimeModule(request?: RuntimeModuleInspectorRequest): RuntimeModuleInspectorResult;
