travels
    Preparing search index...

    Type Alias Travels<S, _F, A, P>

    Travels: {
        getRevision: () => number;
        getState: () => S;
        mutable: boolean;
        subscribe: (listener: (event: TravelsEvent<S, P>) => void) => () => void;
        assertPersistenceCompatible(): void;
        back(amount?: number): void;
        batch<FN extends () => unknown>(
            metadata: TravelMetadata,
            fn: FN & () => unknown,
        ): void;
        batch<FN extends () => unknown>(fn: FN & () => unknown): void;
        canBack(): boolean;
        canForward(): boolean;
        forward(amount?: number): void;
        getControls(): A extends true
            ? RebasableTravelsControls<S, P>
            : RebasableManualTravelsControls<S, P>;
        getHistory(): readonly ReadonlyState<S>[];
        getHistoryEntries(): TravelHistoryEntry<P>[];
        getHistorySnapshot(): S[];
        getMetadata(): (undefined | TravelMetadata)[];
        getPatches(): TravelPatches<P>;
        getPosition(): number;
        go(nextPosition: number): void;
        pauseTracking(): void;
        rebase(): void;
        replaceStateWithoutHistory<U>(updater: {}): void;
        reset(): void;
        resumeTracking(): void;
        serialize(
            options?: TravelsSerializeOptions,
        ): TravelsSerializedHistory<S, P>;
        setState<U>(updater: {}, metadata?: TravelMetadata): void;
        transaction<FN extends () => unknown>(
            metadata: TravelMetadata,
            fn: FN & () => unknown,
        ): void;
        transaction<FN extends () => unknown>(fn: FN & () => unknown): void;
    } & (
        A extends false
            ? { archive(metadata?: TravelMetadata): void; canArchive(): boolean }
            : {}
    )

    Public state-owning Travels capability surface.

    Controlled journals expose recordPatches() through TravelJournal instead. Manual archive methods exist only when A is false, keeping unavailable operations out of both the type and runtime surface.

    _F records the factory's enableAutoFreeze literal. No member depends on it, but it keeps its position so Travels<S, false> cannot silently start meaning a manual-archive timeline.

    Type Parameters

    • S
    • _F extends boolean = false
    • A extends boolean = true
    • P extends PatchesOption = {}

    Type Declaration