export declare function defineReadOnly(object: T, name: K, value: T[K]): void; export declare function getStatic(ctor: any, key: string): T; export declare type Similar = { [P in keyof T]: T[P]; }; export declare type Resolvable = { [P in keyof T]: T[P] | Promise; }; export declare function resolveProperties(object: Readonly>): Promise>; export declare function checkProperties(object: any, properties: { [name: string]: boolean; }): void; export declare function shallowCopy(object: T): Similar; export declare function deepCopy(object: T): Similar; export declare class Description { constructor(info: { [K in keyof T]: T[K]; }); }