travels
    Preparing search index...

    Function createTravels

    Create a new Travels instance

    • Create a new Travels instance with auto archive mode

      Type Parameters

      • S
      • F extends boolean = false
      • P extends { arrayLengthAssignment?: boolean; pathAsArray?: boolean } = {}

      Parameters

      • initialState: S
      • Optionaloptions: Omit<TravelsOptions<F, true, P, S>, "autoArchive"> & { autoArchive?: true }

      Returns {
          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(): RebasableTravelsControls<S, P>;
          getHistory(): readonly Immutable<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;
      }

    • Create a new Travels instance with manual archive mode

      Type Parameters

      • S
      • F extends boolean = false
      • P extends { arrayLengthAssignment?: boolean; pathAsArray?: boolean } = {}

      Parameters

      • initialState: S
      • options: Omit<TravelsOptions<F, false, P, S>, "autoArchive"> & { autoArchive: false }

      Returns Travels<S, F, false, P>

    • Create a new Travels instance when the archive mode is selected dynamically or forwarded through a generic adapter.

      Type Parameters

      • S
      • F extends boolean = false
      • A extends boolean = true
      • P extends { arrayLengthAssignment?: boolean; pathAsArray?: boolean } = {}

      Parameters

      Returns Travels<S, F, A, P>