import { Extent } from "./extent"; export declare enum OrderingState { Untracked = 0, NeedsOrdering = 1, Clearing = 2, Ordering = 3, Ordered = 4 } export interface DateProvider { now(): Date; } export declare enum RelinkingOrder { relinkingOrderPrior = 0, relinkingOrderSubsequent = 1 } export declare enum RelinkingTarget { demand = 0, supply = 1 } export declare enum ResourceType { resource = 0, moment = 1, typedMoment = 2, state = 3 } export declare enum LinkType { reactive = 0, order = 1 } export declare class GraphEvent { sequence: number; timestamp: Date; static readonly initialEvent: GraphEvent; constructor(sequence: number, timestamp: Date); } export interface Transient { clear(): void; } export interface Subscription { extent: Extent | null; callback: (extent: Extent | null) => void; }