UNPKG

synapse-storage

Version:

Набор инструментов для управления состоянием и апи-запросами

33 lines (32 loc) 1.41 kB
/** * Параметры исполнения действия (мемоизация) */ export interface ActionExecutionOptions<TParams, TResult> { memoize?: (currentArgs: TParams, previousArgs: TParams, previousResult: TResult) => boolean; } /** * Статусы жизненного цикла API-запроса. * * Сделано const-объектом (а не TS `enum`) намеренно: значения остаются обычными * строковыми литералами, поэтому `ApiStatus.Loading` и строка `'loading'` * взаимозаменяемы и тип обратно совместим с прежним строковым union'ом. С `enum` * это не так — его член не присваивается к литералу и наоборот. * * `ApiStatus` — одновременно значение (для `ApiStatus.Loading` в коде) и тип * (union всех статусов). */ export declare const ApiStatus: { readonly Idle: "idle"; readonly Loading: "loading"; readonly Success: "success"; readonly Error: "error"; readonly Reset: "reset"; }; export type ApiStatus = (typeof ApiStatus)[keyof typeof ApiStatus]; /** * Состояние API-запроса (`this.apiActions` / `this.keyedApiActions`) */ export interface ApiRequestState { status: ApiStatus; error: string | null; }