Interface StoreState<ThisValue, Namespaces, C>

Type Parameters

  • ThisValue extends Record<string, unknown>

  • Namespaces extends InnerNamespace<ThisValue> = InnerNamespace<ThisValue>

  • C extends Context = Context

Hierarchy

  • StoreState

Properties

batchPushState: (<Keys>(ns, fn, routerOptions?) => Promise<unknown>)

Type declaration

    • <Keys>(ns, fn, routerOptions?): Promise<unknown>
    • Type Parameters

      • Keys extends readonly (keyof Namespaces)[]

      Parameters

      • ns: Keys
      • fn: ((...args) => void)
          • (...args): void
          • Parameters

            • Rest ...args: {
                  [K in string | number | symbol]: Keys[K] extends keyof Namespaces
                      ? undefined | Namespaces[any[any]]["values"]
                      : never
              }
              Rest

            Returns void

      • Optional routerOptions: RouterOptions
        Optional

      Returns Promise<unknown>

batchReplaceState: (<Keys>(ns, fn, routerOptions?) => Promise<unknown>)

Type declaration

    • <Keys>(ns, fn, routerOptions?): Promise<unknown>
    • Type Parameters

      • Keys extends readonly (keyof Namespaces)[]

      Parameters

      • ns: Keys
      • fn: ((...args) => void)
          • (...args): void
          • Parameters

            • Rest ...args: {
                  [K in string | number | symbol]: Keys[K] extends keyof Namespaces
                      ? undefined | Namespaces[any[any]]["values"]
                      : never
              }
              Rest

            Returns void

      • Optional routerOptions: RouterOptions
        Optional

      Returns Promise<unknown>

context: undefined | C
initialQueries: (() => Record<string, string>)

Type declaration

    • (): Record<string, string>
    • Returns Record<string, string>

namespaces: Namespaces
pushState: PushStateFunction<Namespaces[keyof Namespaces]["values"]>
register: (<N>(config, mappedConfig, ns, initialValues, query, values) => RegistryPayload<Namespaces[N]["values"]>)

Type declaration

    • <N>(config, mappedConfig, ns, initialValues, query, values): RegistryPayload<Namespaces[N]["values"]>
    • registers a new namespace

      Type Parameters

      • N extends string | number | symbol

      Parameters

      • config: Config
      • mappedConfig: MappedConfig
      • ns: N
      • initialValues: Namespaces[N]["values"]
      • query: Record<string, string>
      • values: Namespaces[N]["values"]

      Returns RegistryPayload<Namespaces[N]["values"]>

replaceState: ReplaceStateFunction<Namespaces[keyof Namespaces]["values"]>
resetPush: ((ns, routerOptions?) => void)

Type declaration

    • (ns, routerOptions?): void
    • Parameters

      • ns: string
      • Optional routerOptions: RouterOptions
        Optional

      Returns void

resetReplace: ((ns, routerOptions?) => void)

Type declaration

    • (ns, routerOptions?): void
    • Parameters

      • ns: string
      • Optional routerOptions: RouterOptions
        Optional

      Returns void

transition: ((promise) => void)

Type declaration

    • (promise): void
    • Registers a transition promise. While a transition is pending, mutating operations like pushState/replaceState and their batch variants will wait for the promise to resolve before applying their changes. This is primarily used by adapters (e.g., nextjs) to wait for route transitions to complete so that updateFromQuery can sync state prior to applying new mutations.

      Parameters

      • promise: Promise<unknown>

      Returns void

unregister: (() => void)

Type declaration

    • (): void
    • will delete all namespaces and remove the history listener

      Returns void

updateFromQuery: ((query) => void)

Type declaration

    • (query): void
    • Parameters

      • query: string | URLSearchParams

      Returns void

Generated using TypeDoc