/** * Gets a unique identifier. * @returns UUID */ export declare const getUuid: () => string; /** * Top-level identifier. I.e. API function that was called */ export type BaseRequestContext = { id: string; origin: string; }; export type RequestContextWithTransactionId = BaseRequestContext & { transferId: string; }; export type RequestContext = T extends undefined ? BaseRequestContext : RequestContextWithTransactionId; /** * Low-level identifier. I.e. what function am i in now */ export type MethodContext = { id: string; name: string; }; /** * Creates a RequestContext that logs across functions. * @param origin The origin of the request * @returns */ export declare function createRequestContext(origin: string, transferId?: T): RequestContext; /** * Creates a MethodContext that logs within functions * @param name The method name * @returns {MethodContext} */ export declare const createMethodContext: (name: string) => MethodContext; export declare const createLoggingContext: (methodName: string, inherited?: RequestContext | undefined, transferId?: T | undefined) => { methodContext: MethodContext; requestContext: RequestContext; }; //# sourceMappingURL=request.d.ts.map