• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1interface ProxyHandler<T extends object> {
2    apply?(target: T, thisArg: any, argArray: any[]): any;
3    construct?(target: T, argArray: any[], newTarget: Function): object;
4    defineProperty?(target: T, p: string | symbol, attributes: PropertyDescriptor): boolean;
5    deleteProperty?(target: T, p: string | symbol): boolean;
6    get?(target: T, p: string | symbol, receiver: any): any;
7    getOwnPropertyDescriptor?(target: T, p: string | symbol): PropertyDescriptor | undefined;
8    getPrototypeOf?(target: T): object | null;
9    has?(target: T, p: string | symbol): boolean;
10    isExtensible?(target: T): boolean;
11    ownKeys?(target: T): ArrayLike<string | symbol>;
12    preventExtensions?(target: T): boolean;
13    set?(target: T, p: string | symbol, value: any, receiver: any): boolean;
14    setPrototypeOf?(target: T, v: object | null): boolean;
15}
16
17interface ProxyConstructor {
18    revocable<T extends object>(target: T, handler: ProxyHandler<T>): { proxy: T; revoke: () => void; };
19    new <T extends object>(target: T, handler: ProxyHandler<T>): T;
20}
21declare var Proxy: ProxyConstructor;
22