/** Decoded editor_source payload (needed by runtime to load editor SDK). */
export interface EditorSource {
    api_base?: string;
    token: string;
}
/** Decoded editor_conf payload (passed through to editor SDK). */
export interface EditorConf {
    mode: string;
    audit_session_id?: string;
    [key: string]: unknown;
}
/**
 * Clear persisted editor params from sessionStorage. Call when the audit/editor
 * session intentionally ends so the next page load does not rehydrate stale state.
 */
export declare function clearPersistedEditorParams(): void;
/**
 * Reset the editor params cache, forcing re-evaluation on next access.
 * Called by the Chrome extension after restoring URL params via replaceState,
 * or in tests to simulate fresh state without module reloading.
 */
export declare function resetEditorParamsCache(): void;
/** Get decoded editor_source from URL or global (re-evaluates on null). */
export declare function getEditorSource(): EditorSource | null;
/** Get decoded editor_conf from URL or global (re-evaluates on null). */
export declare function getEditorConf(): EditorConf | null;
/**
 * Checks if the editor should be loaded.
 * Requires editor_source + editor_conf encoded params with mode === 'editor'.
 */
export declare const shouldLoadEditor: () => boolean;
/**
 * Checks if audit mode should be activated.
 * Requires editor_source + editor_conf encoded params with mode === 'audit'.
 */
export declare const isAuditMode: () => boolean;
/**
 * Checks if the editor SDK should be loaded.
 * Returns the mode string if a valid token and conf exist, null otherwise.
 * The runtime does not gate on specific mode values — the editor SDK
 * decides what to do with the mode.
 */
export declare const getActiveSdkMode: () => string | null;
export interface EditorLoadOptions {
    editorUrl?: string;
    integrity?: string;
}
/**
 * Dynamically loads the Editor SDK script.
 * Validates URL against allowlist and supports SRI integrity checking.
 */
export declare const loadEditorSdk: (editorUrlOrOptions?: string | EditorLoadOptions) => Promise<void>;
