import { type StorageDisclosure as Disclosure } from '../src/storageManager.js'; export declare const ENFORCE_STRICT = "strict"; export declare const ENFORCE_ALIAS = "allowAliases"; export declare const ENFORCE_OFF = "off"; export declare function getDisclosures(params: any, meta?: { register(moduleName: any, data: any): void; getMetadata(componentType: any, componentName: any): any; getStorageDisclosure(disclosureURL: any): any; getModuleMetadata(moduleName: any): { disclosures: { [k: string]: any; }; components: any; }; }): { matches: any[]; disclosureURLs: {}; }; export declare function checkDisclosure(params: any, getMatchingDisclosures?: typeof getDisclosures): { disclosed: boolean; parent: boolean; reason: any; }; export declare function storageControlRule(getEnforcement?: () => any, check?: typeof checkDisclosure): (params: any) => { allow: boolean; reason: any; }; export type StorageControlConfig = { /** * - 'off': logs a warning when an undisclosed storage key is used * - 'strict': deny access to undisclosed storage keys * - 'allowAliases': deny access to undisclosed storage keys, unless the use is from an alias of a module that does * disclose them */ enforcement?: typeof ENFORCE_OFF | typeof ENFORCE_ALIAS | typeof ENFORCE_STRICT; }; declare module '../src/config' { interface Config { storageControl: StorageControlConfig; } } export declare function dynamicDisclosureCollector(): { hook(next: any, moduleName: any, disclosure: any): void; getDisclosures(): unknown[]; }; export type StorageDisclosure = Disclosure & { /** * URL containing this disclosure, if any. */ disclosedIn: string | null; /** * Names of the modules associated with this disclosure. */ disclosedBy: string[]; }; declare const getStorageUseDisclosures: () => StorageDisclosure[]; declare module '../src/prebidGlobal' { interface PrebidJS { getStorageUseDisclosures: typeof getStorageUseDisclosures; } } export {};