Interface NewableFunction
arguments: any;
caller: Function;
length: number;
name: string;
prototype: any;
"[hasInstance]"(value: any): boolean;
apply<T>(this: new () => T, thisArg: T): void;
apply<T, A extends any[]>(
this: new (...args: A) => T,
thisArg: T,
args: A,
): void;
bind<T>(this: T, thisArg: any): T;
bind<A extends any[], B extends any[], R>(
this: new (...args: [...A[], ...B[]]) => R,
thisArg: any,
...args: A,
): new (...args: B) => R;
call<T, A extends any[]>(
this: new (...args: A) => T,
thisArg: T,
...args: A,
): void;
toString(): string;
}
                 
                    
                  Hierarchy
              
              - Function- NewableFunction (View Summary)
 
 Properties
arguments
caller
Readonlylength
Readonlyname
prototype
 Methods
[hasInstance] 
- "[hasInstance]"(value: any): boolean
- Determines whether the given value inherits from this function if this function was used as a constructor function. - A constructor function can control which objects are recognized as its instances by 'instanceof' by overriding this method. - Parameters- value: any
 - Returns boolean
apply
- apply<T>(this: new () => T, thisArg: T): void
- Calls the function with the specified object as the this value and the elements of specified array as the arguments. - Type Parameters- Returns void
- apply<T, A extends any[]>(
 this: new (...args: A) => T,
 thisArg: T,
 args: A,
 ): void
- Calls the function with the specified object as the this value and the elements of specified array as the arguments. - Type Parameters- Parameters- Returns void
bind
- bind<T>(this: T, thisArg: any): T
- For a given function, creates a bound function that has the same body as the original function. The this object of the bound function is associated with the specified object, and has the specified initial parameters. - Type Parameters- Parameters- this: T
- thisArg: anyThe object to be used as the this object. 
 - Returns T
- bind<A extends any[], B extends any[], R>(
 this: new (...args: [...A[], ...B[]]) => R,
 thisArg: any,
 ...args: A,
 ): new (...args: B) => R
- For a given function, creates a bound function that has the same body as the original function. The this object of the bound function is associated with the specified object, and has the specified initial parameters. - Type Parameters- Parameters- Returns new (...args: B) => R
Returns the name of the function. Function names are read-only and can not be changed.