export declare var release: boolean; export declare var debugable: boolean; export declare class Debug { static release: boolean; static assert: typeof assert; static error: typeof error; static assertUnreachable: typeof assertUnreachable; static assertNotImplemented: typeof assertNotImplemented; static warning: typeof warning; static notImplemented: typeof notImplemented; static dummyConstructor: typeof dummyConstructor; static warnCounts: typeof warnCounts; static abstractMethod: typeof abstractMethod; static somewhatImplemented: typeof somewhatImplemented; static unexpected: typeof unexpected; static unexpectedCase: typeof unexpectedCase; } export declare function notImplemented(message: string): void; export declare function somewhatImplemented(message: string): void; export declare function error(message: string): void; export declare function assert(condition: any, message?: any): void; export declare function assertUnreachable(msg: string): void; export declare function assertNotImplemented(condition: boolean, message: string): void; export declare function warning(message: any, arg1?: any, arg2?: any): void; export declare function warnCounts(): any; export declare function dummyConstructor(message: string): void; export declare function abstractMethod(message: string): void; export declare function unexpected(message?: any): void; export declare function unexpectedCase(message?: any): void; interface IAwayDebug extends StringMap { } declare global { interface Window { _AWAY_DEBUG_: IAwayDebug; } } type TMethodType = 'undefined' | 'object' | 'boolean' | 'number' | 'string' | 'function'; export interface IDebugMethodDeclaration { name: string; declaration?: Array<{ name: string; type: TMethodType; }>; description?: string; } export declare function registerDebugMethod(func: (...args: any[]) => any, methodInfo: IDebugMethodDeclaration): void; export {}; //# sourceMappingURL=Debug.d.ts.map