UNPKG

@v4fire/client

Version:

V4Fire client core library

86 lines (67 loc) 2.05 kB
/*! * V4Fire Client Core * https://github.com/V4Fire/Client * * Released under the MIT license * https://github.com/V4Fire/Client/blob/master/LICENSE */ import type { AsyncOptions } from 'core/async'; import type { ComponentInterface } from 'core/component'; import type iBlock from 'super/i-block'; import type { ComponentStatus } from 'super/i-block/interface'; import type { InitFieldFn as BaseInitFieldFn, MergeFieldFn as BaseMergeFieldFn, UniqueFieldFn as BaseUniqueFieldFn, DecoratorProp as BaseDecoratorProp, DecoratorField as BaseDecoratorField, DecoratorFieldWatcher as BaseDecoratorFieldWatcher, DecoratorMethodWatcher as BaseDecoratorMethodWatcher } from 'core/component/decorators'; export type DecoratorEventListenerMethod = 'on' | 'once'; export interface InitFieldFn< CTX extends ComponentInterface = iBlock > extends BaseInitFieldFn<CTX> {} export interface MergeFieldFn< CTX extends ComponentInterface = iBlock > extends BaseMergeFieldFn<CTX> {} export interface UniqueFieldFn< CTX extends ComponentInterface = iBlock > extends BaseUniqueFieldFn<CTX> {} export type DecoratorMethodWatcher< CTX extends ComponentInterface = iBlock, A = unknown, B = A > = BaseDecoratorMethodWatcher<CTX, A, B>; export type DecoratorFieldWatcher< CTX extends ComponentInterface = iBlock, A = unknown, B = A > = BaseDecoratorFieldWatcher<CTX, A, B>; export interface DecoratorProp< CTX extends ComponentInterface = iBlock, A = unknown, B = A > extends BaseDecoratorProp<CTX, A, B> {} export interface DecoratorField< CTX extends ComponentInterface = iBlock, A = unknown, B = A > extends BaseDecoratorField<CTX, A, B> {} export type WaitStatuses = number | string | ComponentStatus; export interface WaitDecoratorOptions extends AsyncOptions { /** * If true, then the wrapped function will always return a promise * @default `false` */ defer?: boolean | number; } export interface WaitOptions<F extends Function = Function> extends WaitDecoratorOptions { /** * Function to wrap */ fn: F; }