import type { EmptyObject } from '../../../../framework-types/BaseTypes';
import type { ContextHaving } from '../../../../framework-types/execution-context/Types';
import type { ArrayAtom } from '../../core/state/ArrayStateAtom';
import type { PrimitiveAtom } from '../../core/state/PrimitiveAtom';
import type { StateAtom } from '../../core/state/Types';
import type { CoreStateAtoms } from '../../core/Types';
import { CoreExportNames } from '../../core/Types';
import type { ContextWithState } from '../../Types';
import type { AdPosition } from './AdPosition';
import type { AdTagAtom } from './AdTagAtom';
import type { BaseAdAtom } from './BaseAdAtom';
import type { PreloadConfigAtom } from './PreloadConfigAtom';
import type { AdType } from './Types';
import { BaseAdBreakState } from './Types';
type BaseAdBreak = {
    id: string;
    position: AdPosition;
    tag: AdTagAtom;
    state: PrimitiveAtom<BaseAdBreakState>;
    ads: ArrayAtom<BaseAdAtom>;
    preloadConfig: PreloadConfigAtom;
    error: PrimitiveAtom<Error | undefined>;
};
export type BaseAdBreakAtom = StateAtom<BaseAdBreak, EmptyObject>;
type Context = ContextHaving<{
    [CoreExportNames.CoreStateAtoms]: CoreStateAtoms;
}, EmptyObject, ContextWithState>;
export declare function createBaseAdBreakAtom(context: Context, id: string, scheduledPosition: string | number | undefined, tagType: AdType, url: string, adManifestPreloadOffset?: number, adSourcePreloadOffset?: number): BaseAdBreakAtom;
export {};
