interface EID { source: string; uids: Array<{ id?: string; atype?: number; ext?: { provider?: string; }; }>; matcher?: string; } interface EIDSource { routes?: string[]; route?: string; mergeStrategy?: MergeStrategy; } interface ORTB2User { eids?: EID[]; ext?: { eids?: EID[]; }; } interface ORTB2 { user?: ORTB2User; } interface TargetingData { ortb2?: { user?: { eids?: EID[]; }; }; } interface ReqBidsConfigObj { ortb2Fragments: { global: ORTB2; bidder: { [bidderName: string]: ORTB2; }; }; } type MergeStrategy = (existingEids: EID[], newEids: EID[], key?: (eid: EID) => string) => EID[]; interface RTDConfig { enableLogging: boolean; log: (level: string, message: string, ...args: any[]) => void; eidSources: { [source: string]: EIDSource; }; skipMerge: (targetORTB2: ORTB2, eidSource: string) => boolean; optableCacheTargeting: string; matcherFilter: string[]; matcherExclude: string[]; mergeStrategy?: MergeStrategy; appendMergeStrategy: MergeStrategy; prependMergeStrategy: MergeStrategy; replaceMergeStrategy: MergeStrategy; appendNewMergeStrategy: MergeStrategy; targetingFromCache: (config?: RTDConfig) => TargetingData | null; handleRtd: (reqBidsConfigObj: ReqBidsConfigObj, optableExtraData?: any, mergeFn?: any) => Promise; instance: string; waitForTargeting: boolean; } interface RTDOptions { enableLogging?: boolean; eidSources?: { [source: string]: EIDSource; }; skipMerge?: (targetORTB2: ORTB2, eidSource: string) => boolean; optableCacheTargeting?: string; matcherFilter?: string[]; matcherExclude?: string[]; targetingData?: TargetingData; forceGlobalRouting?: boolean; mergeStrategy?: MergeStrategy; instance?: string; waitForTargeting?: boolean; } declare function appendMergeStrategy(existingEids: EID[], newEids: EID[]): EID[]; declare function prependMergeStrategy(existingEids: EID[], newEids: EID[]): EID[]; declare function replaceMergeStrategy(existingEids: EID[], newEids: EID[], key?: (e: EID) => string): EID[]; declare function appendNewMergeStrategy(existingEids: EID[], newEids: EID[], key?: (e: EID) => string): EID[]; declare const defaultEIDSources: { [source: string]: EIDSource; }; declare function targetingFromCache(config?: RTDConfig): TargetingData | null; declare function buildRTD(options?: RTDOptions): RTDConfig; export { buildRTD, targetingFromCache, appendMergeStrategy, prependMergeStrategy, replaceMergeStrategy, appendNewMergeStrategy, defaultEIDSources, type EID, type EIDSource, type ORTB2, type ORTB2User, type TargetingData, type ReqBidsConfigObj, type RTDConfig, type RTDOptions, type MergeStrategy, };