import { type VersionCompatibilityStatus } from '../types/index.js';
import type { RuntimeMethodId, RuntimeMethodRequest, RuntimeMethodResponse } from './runtime-method-contracts.js';
import type { RuntimeAppAuthClient, RuntimeAccountClient, RuntimeAgentModule, RuntimeAuditClient, RuntimeAuthClient, RuntimeCallOptions, RuntimeClient, RuntimeConnectorClient, RuntimeKnowledgeClient, RuntimeLocalServiceClient, RuntimeMemoryClient, RuntimeModelClient, RuntimeStreamCallOptions, RuntimeTransportConfig, RuntimeWorkflowClient } from './types.js';
import type { RuntimeAiModule, RuntimeConnectionState, RuntimeHealth, RuntimeMediaModule, RuntimeMethod, RuntimeOptions, RuntimeScopeModule, RuntimeUnsafeRawModule, RuntimeEventsModule } from './types.js';
import { type RuntimeAvatarDebugModule } from './runtime-avatar-debug.js';
import { type RuntimeCompanionParticipationModule } from './runtime-companion-participation.js';
import { type RuntimeArtifactsModule } from './runtime-artifacts.js';
import { type RuntimeAppLifecycleModule } from './runtime-app-lifecycle.js';
import { type RuntimeGenerateInput, type RuntimeGenerateResult, type RuntimeStreamChunk, type RuntimeStreamInput } from './runtime-convenience.js';
export declare class Runtime {
    #private;
    readonly appId: string;
    readonly auth: RuntimeAuthClient;
    readonly appAuth: RuntimeAppAuthClient;
    readonly account: RuntimeAccountClient;
    readonly ai: RuntimeAiModule;
    readonly artifacts: RuntimeArtifactsModule;
    readonly media: RuntimeMediaModule;
    readonly workflow: RuntimeWorkflowClient;
    readonly model: RuntimeModelClient;
    readonly local: RuntimeLocalServiceClient;
    readonly connector: RuntimeConnectorClient;
    readonly knowledge: RuntimeKnowledgeClient;
    readonly memory: RuntimeMemoryClient;
    readonly agent: RuntimeAgentModule;
    readonly avatarDebug: RuntimeAvatarDebugModule;
    readonly companionParticipation: RuntimeCompanionParticipationModule;
    readonly app: {
        sendMessage: RuntimeClient['app']['sendAppMessage'];
        subscribeMessages: RuntimeClient['app']['subscribeAppMessages'];
    };
    readonly appLifecycle: RuntimeAppLifecycleModule;
    readonly audit: RuntimeAuditClient;
    readonly healthEvents: (request?: import('./generated/runtime/v1/audit.js').SubscribeRuntimeHealthEventsRequest, options?: RuntimeStreamCallOptions) => Promise<AsyncIterable<import('./generated/runtime/v1/audit.js').RuntimeHealthEvent>>;
    readonly providerHealthEvents: (request?: import('./generated/runtime/v1/audit.js').SubscribeAIProviderHealthEventsRequest, options?: RuntimeStreamCallOptions) => Promise<AsyncIterable<import('./generated/runtime/v1/audit.js').AIProviderHealthEvent>>;
    readonly scope: RuntimeScopeModule;
    readonly events: RuntimeEventsModule;
    readonly unsafeRaw: RuntimeUnsafeRawModule;
    readonly transport: RuntimeTransportConfig;
    constructor(options?: RuntimeOptions);
    connect(): Promise<void>;
    ready(input?: {
        timeoutMs?: number;
    }): Promise<void>;
    close(): Promise<void>;
    state(): RuntimeConnectionState;
    runtimeVersion(): string | null;
    versionCompatibility(): VersionCompatibilityStatus;
    health(): Promise<RuntimeHealth>;
    generate(input: RuntimeGenerateInput): Promise<RuntimeGenerateResult>;
    stream(input: RuntimeStreamInput): Promise<AsyncIterable<RuntimeStreamChunk>>;
    call<MethodId extends RuntimeMethodId>(method: MethodId, input: RuntimeMethodRequest<MethodId>, options?: RuntimeCallOptions | RuntimeStreamCallOptions): Promise<RuntimeMethodResponse<MethodId>>;
    call<MethodId extends RuntimeMethodId>(method: RuntimeMethod<RuntimeMethodRequest<MethodId>, RuntimeMethodResponse<MethodId>> & {
        methodId: MethodId;
    }, input: RuntimeMethodRequest<MethodId>, options?: RuntimeCallOptions | RuntimeStreamCallOptions): Promise<RuntimeMethodResponse<MethodId>>;
    call<TReq, TRes>(method: RuntimeMethod<TReq, TRes>, input: TReq, options?: RuntimeCallOptions | RuntimeStreamCallOptions): Promise<TRes>;
    call(method: RuntimeMethod<unknown, unknown>, input: unknown, options?: RuntimeCallOptions | RuntimeStreamCallOptions): Promise<unknown>;
}
//# sourceMappingURL=runtime.d.ts.map