export type ApplicationRuntimeExportErrorCode = "MISSING_RUNTIME_ID" | "MISSING_APPLICATION_ID" | "EMPTY_EXPORT_SURFACE" | "CONTRACT_REJECTED" | "GOVERNANCE_REJECTED";
export type ApplicationRuntimeExportError = {
    code: ApplicationRuntimeExportErrorCode;
    message: string;
    boundary: "input" | "contract" | "governance";
};
export type ApplicationRuntimeExportGate = {
    accepted: boolean;
    reason?: string;
};
export type ApplicationRuntimeExportItem = {
    name: string;
    description?: string;
};
export type ApplicationRuntimeExportsRequest = {
    runtimeId: string;
    applicationId: string;
    publicApis?: readonly ApplicationRuntimeExportItem[];
    visibleEvents?: readonly ApplicationRuntimeExportItem[];
    callableCapabilities?: readonly ApplicationRuntimeExportItem[];
    hiddenInternalDetails?: readonly string[];
    contract?: ApplicationRuntimeExportGate;
    governance?: ApplicationRuntimeExportGate;
};
export type ApplicationRuntimeExports = {
    runtimeId: string;
    applicationId: string;
    publicApis: readonly ApplicationRuntimeExportItem[];
    visibleEvents: readonly ApplicationRuntimeExportItem[];
    callableCapabilities: readonly ApplicationRuntimeExportItem[];
    hiddenInternalDetailCount: number;
    internalFileStructureExposed: false;
};
export type ApplicationRuntimeExportsResult = {
    ok: true;
    exports: ApplicationRuntimeExports;
    events: readonly string[];
} | {
    ok: false;
    error: ApplicationRuntimeExportError;
    events: readonly string[];
};
export declare function defineApplicationRuntimeExports(request: ApplicationRuntimeExportsRequest): ApplicationRuntimeExportsResult;
