@msom/common
Version:
@msom/common
38 lines • 1.62 kB
TypeScript
import { Collection } from "../collection";
export declare function GeneratSymbolKey(key: string): symbol;
export declare function setGlobalData<T>(key: string, data: T): T;
export declare function getGlobalData(key: string): unknown;
export type Nullable = null | undefined;
export type createFunction<T extends unknown[]> = T extends [
...infer P,
infer R
] ? (...args: P) => R : never;
export declare const ENUMERABLE = 4;
export declare const WRITABLE = 2;
export declare const CONFIGURABLE = 1;
/**
* @param target
* @param propKey
* @param flag 7
* * const enumerable = 0x04;
* * const writable = 0x02;
* * const configurable = 0x01;
* @param value
*/
export declare function defineProperty<T>(target: T, propKey: string | symbol, flag?: number, value?: unknown): void;
/**
* @param target
* @param propKey
* @param flag 5
* * const enumerable = 0x04;
* * const writable = 0x02;
* * const configurable = 0x01;
* * 访问器属性修饰符无法设置writable
* @param getter
* @param setter
*/
export declare function defineAccesser<T, R>(target: T, propKey: symbol | string, flag?: number, getter?: () => R, setter?: (value: R) => void): void;
export declare function tryCall<F extends createFunction<[...unknown[], unknown]>>(call: F, data?: Parameters<F>, receiver?: unknown, error?: (error: Error | unknown) => Error | unknown): ReturnType<F>;
export declare function equal(value: unknown, otherValue: unknown): boolean;
export declare function ownKeysAndPrototypeOwnKeys($events: object, keys?: Collection<PropertyKey>): Collection<PropertyKey>;
//# sourceMappingURL=index.d.ts.map