type ContextType = Map; interface IContext { context: ContextType; id: string; index: number; } export interface IOptions { parent?: Context; id?: string; } export declare class Context implements IContext { protected readonly _parent: Context; private readonly _id; private readonly _index; constructor(opts?: IOptions); protected _context: ContextType; get context(): ContextType; get parent(): Context; get id(): string; get index(): number; WithValue(key: any, value: any): Context; Trace(index: number): Context; Length(): number; Head(): Context; } export declare function NewContext(opts?: IOptions): Context; export interface IBornOptions { length: number; parent?: Context; idProvider?: () => string; } export declare function Born(opts: IBornOptions): Context; export {};