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 { AdType } from './AdType';
import type { BaseAdAtom } from './BaseAdAtom';
import type { BaseAdPodState } from './BaseAdPodState';
import type { PreloadConfigAtom } from './PreloadConfigAtom';
import { AdvertisingBaseExportNames } from './Types';
type BaseAdPod = {
    id: string;
    position: AdPosition;
    tag: AdTagAtom;
    state: PrimitiveAtom<BaseAdPodState>;
    ads: ArrayAtom<BaseAdAtom>;
    preloadConfig: PreloadConfigAtom;
    error: PrimitiveAtom<Error | undefined>;
};
export type BaseAdPodAtom = StateAtom<BaseAdPod, EmptyObject>;
type Context = ContextHaving<{
    [CoreExportNames.CoreStateAtoms]: CoreStateAtoms;
    [AdvertisingBaseExportNames.BaseAdPodState]: typeof BaseAdPodState;
}, EmptyObject, ContextWithState>;
export declare function createBaseAdPodAtom(context: Context, id: string, scheduledPosition: string | number | undefined, tagType: AdType, url: string, adManifestPreloadOffset?: number, adSourcePreloadOffset?: number): BaseAdPodAtom;
export {};
