Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit e52af17

Browse files
committed
Add TypeScript definitions
1 parent a9e4d53 commit e52af17

File tree

1 file changed

+134
-0
lines changed

1 file changed

+134
-0
lines changed

‎stacktrace-js.d.ts

Lines changed: 134 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,134 @@
1+
// Type definitions for stacktrace.js v2.0.0
2+
// Project: https://github.com/stacktracejs/stacktrace.js
3+
// Definitions by: Eric Wendelin <https://github.com/exceptionless>
4+
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
5+
6+
declare namespace StackTrace {
7+
8+
export interface SourceCache {
9+
[key: string]: string | Promise<string>;
10+
}
11+
12+
export interface StackTraceOptions {
13+
filter?: (stackFrame: StackFrame) => boolean;
14+
sourceCache?: SourceCache;
15+
offline?: boolean;
16+
}
17+
18+
export interface StackFrame {
19+
constructor(object: StackFrame): StackFrame;
20+
21+
isConstructor?: boolean;
22+
getIsConstructor(): boolean;
23+
setIsConstructor(): void;
24+
25+
isEval?: boolean;
26+
getIsEval(): boolean;
27+
setIsEval(): void;
28+
29+
isNative?: boolean;
30+
getIsNative(): boolean;
31+
setIsNative(): void;
32+
33+
isTopLevel?: boolean;
34+
getIsTopLevel(): boolean;
35+
setIsTopLevel(): void;
36+
37+
columnNumber?: number;
38+
getColumnNumber(): number;
39+
setColumnNumber(): void;
40+
41+
lineNumber?: number;
42+
getLineNumber(): number;
43+
setLineNumber(): void;
44+
45+
fileName?: string;
46+
getFileName(): string;
47+
setFileName(): void;
48+
49+
functionName?: string;
50+
getFunctionName(): string;
51+
setFunctionName(): void;
52+
53+
source?: string;
54+
getSource(): string;
55+
setSource(): void;
56+
57+
args?: any[];
58+
getArgs(): any[];
59+
setArgs(): void;
60+
61+
evalOrigin?: StackFrame;
62+
getEvalOrigin(): StackFrame;
63+
setEvalOrigin(): void;
64+
65+
toString(): string;
66+
}
67+
68+
/**
69+
* Get a backtrace from invocation point.
70+
*
71+
* @param options Options Object
72+
* @return Array[StackFrame]
73+
*/
74+
export function get(options?: StackTraceOptions): Promise<StackFrame[]>;
75+
76+
/**
77+
* Get a backtrace from invocation point, synchronously. Does not
78+
* attempt to map sources.
79+
*
80+
* @param options Options Object
81+
* @return Array[StackFrame]
82+
*/
83+
export function getSync(options?: StackTraceOptions): StackFrame[];
84+
85+
/**
86+
* Given an error object, parse it.
87+
*
88+
* @param error Error object
89+
* @param options Object for options
90+
* @return Array[StackFrame]
91+
*/
92+
export function fromError(error: Error, options?: StackTraceOptions): Promise<StackFrame[]>;
93+
94+
/**
95+
* Use StackGenerator to generate a backtrace.
96+
* @param options Object options
97+
* @returns Array[StackFrame]
98+
*/
99+
export function generateArtificially(options?: StackTraceOptions): Promise<StackFrame[]>;
100+
101+
/**
102+
* Given a function, wrap it such that invocations trigger a callback that
103+
* is called with a stack trace.
104+
*
105+
* @param {Function} fn to be instrumented
106+
* @param {Function} callback function to call with a stack trace on invocation
107+
* @param {Function} errback optional function to call with error if unable to get stack trace.
108+
* @param {Object} thisArg optional context object (e.g. window)
109+
*/
110+
export function instrument<TFunc extends Function>(fn: TFunc, callback: (stackFrames: StackFrame[]) => void, errback?: (error: Error) => void, thisArg?: any): TFunc;
111+
112+
/**
113+
* Given a function that has been instrumented,
114+
* revert the function to it's original (non-instrumented) state.
115+
*
116+
* @param fn {Function}
117+
*/
118+
export function deinstrument<TFunc extends Function>(fn: TFunc): TFunc;
119+
120+
/**
121+
* Given an Array of StackFrames, serialize and POST to given URL.
122+
*
123+
* @param stackframes - Array[StackFrame]
124+
* @param url - URL as String
125+
* @param errorMsg - Error message as String
126+
* @param requestOptions - Object with headers information
127+
* @return Promise<any>
128+
*/
129+
export function report(stackframes: StackFrame[], url: string, errorMsg?: string, requestOptions?: object): Promise<any>;
130+
}
131+
132+
declare module "stacktrace-js" {
133+
export = StackTrace;
134+
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /