import type { PluginContext } from '@openplayerjs/core'; import type { AdsBreakConfig, AdsPluginConfig, AdsSource, AdsSourceType, VastInput } from './types'; export declare function normalizeVmapAdSourceFn(adSource: any): any | undefined; export declare function extractVastTagUriFn(adTagURI: any): string | undefined; export declare function parseVmapTimeOffsetFn(timeOffset: any): { at: 'preroll' | 'postroll' | number; pendingPercent?: number | null; }; export declare function getVastInputFromBreakFn(b: AdsBreakConfig): { input?: VastInput; sourceType?: AdsSourceType; }; export declare function getBreakIdFn(b: AdsBreakConfig): string; type PendingPercentBreak = { id: string; percent: number; once: boolean; source: AdsSource; }; export declare class AdScheduler { private cfg; private ctx; private warn; private onVmapError; resolvedBreaks: AdsBreakConfig[]; pendingPercentBreaks: PendingPercentBreak[]; playedBreaks: Set; vmapPending: boolean; vmapLoadPromise: Promise | null; pendingVmapSrc?: string; constructor(cfg: Pick>, 'sources' | 'breaks' | 'adSourcesMode' | 'breakTolerance' | 'debug'> & { sources: AdsSource[]; }, ctx: PluginContext, warn: (...args: any[]) => void, onVmapError: (err: unknown) => void); isXmlString(src: string): boolean; getSource(type: AdsSourceType): AdsSource | undefined; getPrimaryVastLikeSource(): AdsSource | undefined; inferSourceTypeForUrl(url: string): 'NONLINEAR' | undefined; getVastInputFromBreak(b: AdsBreakConfig): { input?: VastInput; sourceType?: AdsSourceType; }; getBreakId(b: AdsBreakConfig): string; getPrerollBreak(): AdsBreakConfig | undefined; getPostrollBreak(): AdsBreakConfig | undefined; getDueMidrollBreaks(currentTime: number): AdsBreakConfig[]; getDueMidrollBreak(currentTime: number): AdsBreakConfig | undefined; rebuild(): void; normalizeVmapAdSource(adSource: any): any | undefined; extractVastTagUri(adTagURI: any): string | undefined; parseVmapTimeOffset(timeOffset: any): { at: 'preroll' | 'postroll' | number; pendingPercent?: number | null; }; loadVmapAndMerge(existing: AdsBreakConfig[], vmapSrc?: string): Promise; private parseVmapFallback; reset(): void; } export {}; //# sourceMappingURL=schedule.d.ts.map