@evojs/context
Version:
Nodejs context storage
24 lines (23 loc) • 804 B
TypeScript
export declare class AsyncContext<T extends {} = AsyncContextPayload> {
private static readonly _contexts;
private static _inited;
readonly payload: Partial<T>;
readonly asyncId: number;
readonly traceId: string;
constructor(args: AsyncContextArgs<T>);
static generateTraceId: () => string;
static has(asyncId?: number): boolean;
static get<T extends {} = AsyncContextPayload>(asyncId?: number): AsyncContext<T> | undefined;
static set<T extends {} = AsyncContextPayload>(context: AsyncContext<T>): AsyncContext<T>;
static create<T extends {} = AsyncContextPayload>(args: AsyncContextArgs<T>): AsyncContext<T>;
private static _init;
}
export interface AsyncContextArgs<T> {
payload?: Partial<T>;
asyncId?: number;
traceId?: string;
}
declare global {
interface AsyncContextPayload {
}
}