import { AvatarDebugProbeKind } from './generated/runtime/v1/agent_service.js';
import type { AvatarDebugRequestedBy, GetAvatarDebugReplayResponse, GetAvatarDebugSnapshotResponse, ListAvatarDebugProbeResultsResponse, RequestAvatarDebugProbeResponse } from './generated/runtime/v1/agent_service.js';
import type { RuntimeCallOptions } from './types.js';
import type { RuntimeAgentClient } from './types-client-interfaces.js';
import type { RuntimeAgentLocalIdentity, RuntimeScopedBindingAttachment } from './types-runtime-agent.js';
type ProtectedScopeHelper = {
    getCallOptions(scopes: readonly string[], baseOptions?: RuntimeCallOptions): Promise<RuntimeCallOptions>;
};
export type RuntimeAvatarDebugSnapshotRequest = RuntimeAgentLocalIdentity & {
    conversationAnchorId: string;
    subjectUserId?: string;
    scopedBinding?: RuntimeScopedBindingAttachment;
};
export type RuntimeAvatarDebugRequestProbeRequest = RuntimeAvatarDebugSnapshotRequest & {
    probeKind: AvatarDebugProbeKind;
    requestedBy: AvatarDebugRequestedBy;
    probeId?: string;
    turnId?: string;
    streamId?: string;
    avatarInstanceId?: string;
    replayRequested?: boolean;
};
export type RuntimeAvatarDebugListProbeResultsRequest = RuntimeAvatarDebugSnapshotRequest & {
    probeKind?: AvatarDebugProbeKind;
};
export type RuntimeAvatarDebugReplayRequest = RuntimeAvatarDebugSnapshotRequest & {
    probeId: string;
};
export type RuntimeAvatarDebugModule = {
    snapshot(request: RuntimeAvatarDebugSnapshotRequest, options?: RuntimeCallOptions): Promise<GetAvatarDebugSnapshotResponse>;
    requestProbe(request: RuntimeAvatarDebugRequestProbeRequest, options?: RuntimeCallOptions): Promise<RequestAvatarDebugProbeResponse>;
    listProbeResults(request: RuntimeAvatarDebugListProbeResultsRequest, options?: RuntimeCallOptions): Promise<ListAvatarDebugProbeResultsResponse>;
    getReplay(request: RuntimeAvatarDebugReplayRequest, options?: RuntimeCallOptions): Promise<GetAvatarDebugReplayResponse>;
};
export declare function createRuntimeAvatarDebugModule(input: {
    appId: string;
    agent: RuntimeAgentClient;
    protectedAccess: ProtectedScopeHelper;
    resolveSubjectUserId: (explicit?: string) => Promise<string>;
}): RuntimeAvatarDebugModule;
export {};
//# sourceMappingURL=runtime-avatar-debug.d.ts.map