import type { Abortable } from '../../../framework-types/abortable/Abortable'; import type { ContextHaving } from '../../../framework-types/execution-context/Types'; import type { ArrayAtom } from '../core/state/ArrayStateAtom'; import type { CoreEffects, CoreExportNames, CoreStateAtoms } from '../core/Types'; import type { ContextWithState } from '../Types'; import type { SourceConfig } from './atoms/SourceConfigAtom'; import type { CreateSourceStateAtom, SourceStateAtom } from './atoms/SourceStateAtom'; import type { createSourceReference } from './SourceReference'; export declare enum SourceExportNames { CreateSourceStateAtom = "create-source-state-atom", CreateSourceReference = "create-source-reference", SourceReferences = "source-references", SourceState = "source-state-atom" } export type SourcePackageDependencies = { [CoreExportNames.CoreStateAtoms]: CoreStateAtoms; [CoreExportNames.CoreEffects]: CoreEffects; }; export type SourcePackageExports = { [SourceExportNames.CreateSourceStateAtom]: CreateSourceStateAtom; [SourceExportNames.CreateSourceReference]: typeof createSourceReference; [SourceExportNames.SourceReferences]: SourceReferences; [SourceExportNames.SourceState]: SourceStateAtom; }; export type SourcePackageContext = ContextHaving; export type SourceReference = { state: SourceStateAtom; abortable: Abortable; config: SourceConfig; id: string; }; export type SourceReferences = ArrayAtom;