33 lines
1.4 KiB
TypeScript
33 lines
1.4 KiB
TypeScript
export interface IDebugNameData {
|
|
/**
|
|
* The owner object of an observable.
|
|
* Used for debugging only, such as computing a name for the observable by iterating over the fields of the owner.
|
|
*/
|
|
readonly owner?: DebugOwner | undefined;
|
|
/**
|
|
* A string or function that returns a string that represents the name of the observable.
|
|
* Used for debugging only.
|
|
*/
|
|
readonly debugName?: DebugNameSource | undefined;
|
|
/**
|
|
* A function that points to the defining function of the object.
|
|
* Used for debugging only.
|
|
*/
|
|
readonly debugReferenceFn?: Function | undefined;
|
|
}
|
|
export declare class DebugNameData {
|
|
readonly owner: DebugOwner | undefined;
|
|
readonly debugNameSource: DebugNameSource | undefined;
|
|
readonly referenceFn: Function | undefined;
|
|
constructor(owner: DebugOwner | undefined, debugNameSource: DebugNameSource | undefined, referenceFn: Function | undefined);
|
|
getDebugName(target: object): string | undefined;
|
|
}
|
|
/**
|
|
* The owning object of an observable.
|
|
* Is only used for debugging purposes, such as computing a name for the observable by iterating over the fields of the owner.
|
|
*/
|
|
export type DebugOwner = object | undefined;
|
|
export type DebugNameSource = string | (() => string | undefined);
|
|
export declare function getDebugName(target: object, data: DebugNameData): string | undefined;
|
|
export declare function getFunctionName(fn: Function): string | undefined;
|