import type { EmptyObject } from '../../../../framework-types/BaseTypes';
import type { ContextHaving } from '../../../../framework-types/execution-context/Types';
import type { Constants } from '../../core/Constants';
import type { CoreEffects, CoreExportNames, CoreStateAtoms } from '../../core/Types';
import type { CoreUtils } from '../../core/utils/Types';
import type { SourceStateAtom } from '../../source/atoms/SourceStateAtom';
import type { SourceExportNames } from '../../source/Types';
import type { StreamDataStructureSelectionGroups } from '../../stream-data-structure/selection-group/Exports';
import type { StreamDataStructureStream } from '../../stream-data-structure/stream/Exports';
import type { StreamingState } from '../../streaming/Types';
import type { ContextWithState } from '../../Types';
import type { SubtitleCueMapAtom } from '../subtitle-base/SubtitleCueMapAtom';
import type { SubtitleBaseExportNames } from '../subtitle-base/Types';
export type SubtitleNativeRendererDependencies = {
    [SourceExportNames.SourceState]: SourceStateAtom;
    [SubtitleBaseExportNames.SubtitleCueMapAtom]: SubtitleCueMapAtom;
    [CoreExportNames.CoreEffects]: CoreEffects;
    [CoreExportNames.Utils]: CoreUtils;
    [CoreExportNames.Constants]: Constants;
    [CoreExportNames.CoreStateAtoms]: CoreStateAtoms;
} & StreamDataStructureSelectionGroups & StreamingState & StreamDataStructureStream;
export type SubtitleNativeRendererExports = EmptyObject;
export type SubtitleNativeRendererPackageContext = ContextHaving<SubtitleNativeRendererDependencies, SubtitleNativeRendererExports, ContextWithState>;
