import IVirtualConsolePrinter from './IVirtualConsolePrinter.js'; import { ConsoleConstructor } from 'console'; /** * Virtual Console. * * @see https://developer.mozilla.org/en-US/docs/Web/API/Console */ export default class VirtualConsole implements Console { #private; Console: ConsoleConstructor; /** * Constructor. * * @param printer Console printer. */ constructor(printer: IVirtualConsolePrinter); /** * Writes an error message to the console if the assertion is false. If the assertion is true, nothing happens. * * @param assertion Assertion. * @param args Arguments. */ assert(assertion: boolean, ...args: Array): void; /** * Clears the console. */ clear(): void; /** * Logs the number of times that this particular call to count() has been called. * * @param [label='default'] Label. */ count(label?: string): void; /** * Resets the counter. * * @param [label='default'] Label. */ countReset(label?: string): void; /** * Outputs a message to the web console at the "debug" log level. * * @param args Arguments. */ debug(...args: Array): void; /** * Displays an interactive list of the properties of the specified JavaScript object. * * @param data Data. */ dir(data: object): void; /** * Displays an interactive tree of the descendant elements of the specified XML/HTML element. * * @param data Data. */ dirxml(data: object): void; /** * Outputs an error message to the console. * * @param args Arguments. */ error(...args: Array): void; /** * Alias for error(). * * @deprecated * @alias error() * @param args Arguments. */ exception(...args: Array): void; /** * Creates a new inline group in the console, causing any subsequent console messages to be indented by an additional level, until console.groupEnd() is called. * * @param [label] Label. */ group(label?: string): void; /** * Creates a new inline group in the console, but prints it as collapsed, requiring the use of a disclosure button to expand it. * * @param [label] Label. */ groupCollapsed(label?: string): void; /** * Exits the current inline group in the console. */ groupEnd(): void; /** * * @param args */ info(...args: Array): void; /** * Outputs a message to the console. * * @param args Arguments. */ log(...args: Array): void; /** * Starts recording a performance profile. * * TODO: Implement this. */ profile(): void; /** * Stops recording a performance profile. * * TODO: Implement this. */ profileEnd(): void; /** * Displays tabular data as a table. * * @param data Data. */ table(data: { [key: string]: number | string | boolean; } | string[]): void; /** * Starts a timer you can use to track how long an operation takes. * * @param [label=default] Label. */ time(label?: string): void; /** * Stops a timer that was previously started by calling console.time(). * The method logs the elapsed time in milliseconds. * * @param [label=default] Label. */ timeEnd(label?: string): void; /** * Logs the current value of a timer that was previously started by calling console.time(). * The method logs the elapsed time in milliseconds. * * @param [label=default] Label. * @param [args] Arguments. */ timeLog(label?: string, ...args: Array): void; /** * Adds a single marker to the browser's Performance tool. * * TODO: Implement this. */ timeStamp(): void; /** * Outputs a stack trace to the console. * * @param args Arguments. */ trace(...args: Array): void; /** * Outputs a warning message to the console. * * @param args Arguments. */ warn(...args: Array): void; } //# sourceMappingURL=VirtualConsole.d.ts.map