import { ServerZone } from '@amplitude/analytics-core';
import { PrivacyConfig, SessionReplayJoinedConfig } from './config/types';
import { StorageData } from './typings/session-replay';
export declare const maskFn: (elementType: 'text' | 'input', config?: PrivacyConfig) => (text: string, element: HTMLElement | null) => string;
export declare const generateHashCode: (str: string) => number;
export declare const isSessionInSample: (sessionId: string | number, sampleRate: number) => boolean;
export declare const getCurrentUrl: () => string;
export declare const generateSessionReplayId: (sessionId: string | number, deviceId: string) => string;
export declare const getServerUrl: (serverZone?: keyof typeof ServerZone, trackServerUrl?: string) => string;
export declare const getStorageSize: () => Promise<StorageData>;
export declare const getDebugConfig: (config: SessionReplayJoinedConfig) => {
    captureEnabled?: boolean | undefined;
    interactionConfig?: import("./config/types").InteractionConfig | undefined;
    loggingConfig?: import("./config/types").LoggingConfig | undefined;
    apiKey: string;
    loggerProvider: import("@amplitude/analytics-core").ILogger;
    logLevel: import("@amplitude/analytics-core").LogLevel;
    flushMaxRetries: number;
    sampleRate: number;
    privacyConfig?: PrivacyConfig | undefined;
    debugMode?: boolean | undefined;
    configServerUrl?: string | undefined;
    trackServerUrl?: string | undefined;
    shouldInlineStylesheet?: boolean | undefined;
    version?: import("./config/types").SessionReplayVersion | undefined;
    performanceConfig?: import("./config/types").SessionReplayPerformanceConfig | undefined;
    storeType: import("./typings/session-replay").StoreType;
    experimental?: {
        useWebWorker: boolean;
    } | undefined;
    flushIntervalMillis: number;
    flushQueueSize: number;
    instanceName?: string | undefined;
    minIdLength?: number | undefined;
    offline?: boolean | null | undefined;
    optOut: boolean;
    plan?: import("@amplitude/analytics-core").Plan | undefined;
    ingestionMetadata?: import("@amplitude/analytics-core").IngestionMetadata | undefined;
    serverUrl?: string | undefined;
    serverZone?: import("@amplitude/analytics-core").ServerZoneType | undefined;
    storageProvider?: import("@amplitude/analytics-core").Storage<import("@amplitude/analytics-core").Event[]> | undefined;
    transportProvider: import("@amplitude/analytics-core").Transport;
    useBatch: boolean;
    requestMetadata?: import("@amplitude/analytics-core/lib/esm/config").IRequestMetadata | undefined;
};
//# sourceMappingURL=helpers.d.ts.map