import type { ShortcutClientLogContext, ShortcutClientUserContext } from './types.js';
export declare function obfuscateShortcutClientEmail(email: string | null | undefined): string;
export declare function normalizeShortcutClientPlanType(planType: string | null | undefined): 'free' | 'pro' | 'team' | '';
/**
 * Mutable runtime-owned log context.
 *
 * Owns only stable correlation fields that should be inherited by emitted log rows.
 * Event-specific payloads stay outside this store.
 */
export declare class ShortcutClientLogContextStore {
    private context;
    setUserId(userId: string): void;
    clearUserId(): void;
    setSessionId(sessionId: string): void;
    clearSessionId(): void;
    setRequestId(requestId: string): void;
    clearRequestId(): void;
    setRunId(runId: string): void;
    clearRunId(): void;
    setFileId(fileId: string): void;
    clearFileId(): void;
    setBuildInfo(input: {
        commit?: string;
        version?: string;
    }): void;
    setUserContext(input: ShortcutClientUserContext): void;
    clearUserContext(): void;
    getSnapshot(): ShortcutClientLogContext;
}
//# sourceMappingURL=context.d.ts.map