nowjs-core
Version:
NowCanDo Javascript Core [nowjs-core] is a library written by TypeScript code maintains under Apache 2.0 licence
47 lines (46 loc) • 1.47 kB
TypeScript
export declare function attribute(): {
(target: Function): void;
(target: Object, propertyKey: string | symbol): void;
};
export declare function getAttribute(target: any, propertyKey: string): any;
export declare function typeName(typeName: string): {
(target: Function): void;
(target: Object, propertyKey: string | symbol): void;
};
export declare function getTypeName(target: any, propertyKey: string): any;
export declare function typeMeta(typeMeta: any): {
(target: Function): void;
(target: Object, propertyKey: string | symbol): void;
};
export declare function getTypeMeta(target: any, propertyKey: string): any;
export declare type Readonly<T> = {
readonly [P in keyof T]: T[P];
};
export declare type Deferred<T> = {
[P in keyof T]: Promise<T[P]>;
};
export declare type Proxify<T> = {
[P in keyof T]: {
get(): T[P];
set(v: T[P]): void;
};
};
export declare type Nullable<T> = {
[P in keyof T]: T[P] | null;
};
export declare type Partial<T> = {
[P in keyof T]?: T[P];
};
export declare type Maybe<T> = T | void;
export declare function isDefined<T>(x: Maybe<T>): x is T;
export declare function isUndefined<T>(x: Maybe<T>): x is void;
export declare function getOrElse<T>(x: Maybe<T>, defaultValue: T): T;
export declare type Tree<T> = {
Value: T;
Left: Tree<T>;
Right: Tree<T>;
};
export declare type LinkedList<T> = T & {
Next: LinkedList<T>;
Previous?: LinkedList<T>;
};