UNPKG

@versatiledatakit/shared

Version:

Versatile Data Kit Shared library enables reusability of shared features like: NgRx Redux, Error Handlers, Utils, Generic Components, etc.

27 lines (26 loc) 1.15 kB
export declare type Nil = null | undefined; export declare type Primitives = string | number | boolean; export declare type PrimitivesDate = Primitives | Date; export declare type PrimitivesNil = Primitives | Nil; export declare type LiteralObject<T = unknown> = { [p: string]: T; }; export declare type LiteralObjectOrNull = LiteralObject | null; export declare type LiteralObjectNull = LiteralObject | null; export declare type PrimitivesNilArrays = PrimitivesNil | PrimitivesNil[]; export declare type PrimitivesNilObject = PrimitivesNil | LiteralObject<PrimitivesNil>; export declare type Collections<T = unknown> = LiteralObject | T[] | Map<any, T> | WeakMap<any, T> | Set<T> | { [key: string]: T; }; export declare type ArrayElement<ArrayType extends ArrayLike<any>> = ArrayType[number]; /** * The state of a DataSource. */ export interface DataSource<T = DataSource<any>> { /** * ** Map of DataSource. * * - Each DataSource can be either a primitive, null or undefined, other DataSource or array of DataSources. */ readonly [key: string]: PrimitivesNilArrays | DataSource<T> | Array<DataSource<T>> | T; }