import { ActionCreatorWithPayload } from '../action'; import { NodeId, Nodes, StateNode } from './components'; type AddMetadataPayload = { id: NodeId; meta: Record; }; type AddArtifactPayload = { id: NodeId; artifact: unknown; }; export type ProvenanceGraph = { nodes: Nodes; current: NodeId; root: NodeId; }; export type ProvenanceGraphActions = { addMetadata: ActionCreatorWithPayload; addArtifact: ActionCreatorWithPayload; changeCurrent: ActionCreatorWithPayload; addNode: ActionCreatorWithPayload, 'provenance-graph/addNode'>; load: ActionCreatorWithPayload, 'provenance-graph/load'>; }; export type ProvenanceGraphAction = ReturnType[keyof ProvenanceGraphActions]>; type PublicGraphSlice = { actions: ProvenanceGraphActions; getInitialState: () => ProvenanceGraph; reduce: (state: ProvenanceGraph, action: ProvenanceGraphAction) => ProvenanceGraph; }; export declare function graphSliceCreator(initialState: State, args?: { artifact?: unknown; metadata?: Record; rootLabel?: string; }): PublicGraphSlice; export {};