UNPKG

aws-cdk

Version:

CDK Toolkit, the command line tool for CDK apps

117 lines (116 loc) 5.32 kB
import { IoMessageSpecificCode, IoCodeLevel } from './toolkit/cli-io-host'; /** * Executes a block of code with corked logging. All log messages during execution * are buffered and only written when all nested cork blocks complete (when CORK_COUNTER reaches 0). * @param block - Async function to execute with corked logging * @returns Promise that resolves with the block's return value */ export declare function withCorkedLogging<T>(block: () => Promise<T>): Promise<T>; interface LogParams<L extends IoCodeLevel> { /** * @see {@link IoMessage.code} */ readonly code?: IoMessageSpecificCode<L>; /** * @see {@link IoMessage.message} */ readonly message: string; } type LogInput<L extends IoCodeLevel> = string | LogParams<L>; /** * Logs an error level message. * * Can be used in multiple ways: * ```ts * error(`operation failed: ${e}`) // infers default error code `CDK_TOOLKIT_E000` * error('operation failed: %s', e) // infers default error code `CDK_TOOLKIT_E000` * error({ message: 'operation failed', code: 'CDK_SDK_E001' }) // specifies error code `CDK_SDK_E001` * error({ message: 'operation failed: %s', code: 'CDK_SDK_E001' }, e) // specifies error code `CDK_SDK_E001` * ``` */ export declare const error: (input: LogInput<"E">, ...args: unknown[]) => void; /** * Logs an warning level message. * * Can be used in multiple ways: * ```ts * warning(`deprected feature: ${message}`) // infers default warning code `CDK_TOOLKIT_W000` * warning('deprected feature: %s', message) // infers default warning code `CDK_TOOLKIT_W000` * warning({ message: 'deprected feature', code: 'CDK_SDK_W001' }) // specifies warning code `CDK_SDK_W001` * warning({ message: 'deprected feature: %s', code: 'CDK_SDK_W001' }, message) // specifies warning code `CDK_SDK_W001` * ``` */ export declare const warning: (input: LogInput<"W">, ...args: unknown[]) => void; /** * Logs an info level message. * * Can be used in multiple ways: * ```ts * info(`processing: ${message}`) // infers default info code `CDK_TOOLKIT_I000` * info('processing: %s', message) // infers default info code `CDK_TOOLKIT_I000` * info({ message: 'processing', code: 'CDK_TOOLKIT_I001' }) // specifies info code `CDK_TOOLKIT_I001` * info({ message: 'processing: %s', code: 'CDK_TOOLKIT_I001' }, message) // specifies info code `CDK_TOOLKIT_I001` * ``` */ export declare const info: (input: LogInput<"I">, ...args: unknown[]) => void; /** * Logs an info level message to stdout. * * Can be used in multiple ways: * ```ts * data(`${JSON.stringify(stats)}`) // infers default info code `CDK_TOOLKIT_I000` * data('{"count": %d}', count) // infers default info code `CDK_TOOLKIT_I000` * data({ message: 'stats: %j', code: 'CDK_DATA_I001' }) // specifies info code `CDK_DATA_I001` * data({ message: 'stats: %j', code: 'CDK_DATA_I001' }, stats) // specifies info code `CDK_DATA_I001` * ``` */ export declare const data: (input: LogInput<"I">, ...args: unknown[]) => void; /** * Logs a debug level message. * * Can be used in multiple ways: * ```ts * debug(`state: ${JSON.stringify(state)}`) // infers default info code `CDK_TOOLKIT_I000` * debug('cache hit ratio: %d%%', ratio) // infers default info code `CDK_TOOLKIT_I000` * debug({ message: 'state update', code: 'CDK_TOOLKIT_I001' }) // specifies info code `CDK_TOOLKIT_I001` * debug({ message: 'ratio: %d%%', code: 'CDK_TOOLKIT_I001' }, ratio) // specifies info code `CDK_TOOLKIT_I001` * ``` */ export declare const debug: (input: LogInput<"I">, ...args: unknown[]) => void; /** * Logs a trace level message. * * Can be used in multiple ways: * ```ts * trace(`entered ${name} with ${args}`) // infers default info code `CDK_TOOLKIT_I000` * trace('method: %s, args: %j', name, args) // infers default info code `CDK_TOOLKIT_I000` * trace({ message: 'entered', code: 'CDK_TOOLKIT_I001' }) // specifies info code `CDK_TOOLKIT_I001` * trace({ message: 'method: %s', code: 'CDK_TOOLKIT_I001' }, name) // specifies info code `CDK_TOOLKIT_I001` * ``` */ export declare const trace: (input: LogInput<"I">, ...args: unknown[]) => void; /** * Logs an info level success message in green text. * * Can be used in multiple ways: * ```ts * success(`deployment completed: ${name}`) // infers default info code `CDK_TOOLKIT_I000` * success('processed %d items', count) // infers default info code `CDK_TOOLKIT_I000` * success({ message: 'completed', code: 'CDK_TOOLKIT_I001' }) // specifies info code `CDK_TOOLKIT_I001` * success({ message: 'items: %d', code: 'CDK_TOOLKIT_I001' }, count) // specifies info code `CDK_TOOLKIT_I001` * ``` */ export declare const success: (input: LogInput<"I">, ...args: unknown[]) => void; /** * Logs an info level message in bold text. * * Can be used in multiple ways: * ```ts * highlight(`important: ${msg}`) // infers default info code `CDK_TOOLKIT_I000` * highlight('attention required: %s', reason) // infers default info code `CDK_TOOLKIT_I000` * highlight({ message: 'notice', code: 'CDK_TOOLKIT_I001' }) // specifies info code `CDK_TOOLKIT_I001` * highlight({ message: 'notice: %s', code: 'CDK_TOOLKIT_I001' }, msg) // specifies info code `CDK_TOOLKIT_I001` * ``` */ export declare const highlight: (input: LogInput<"I">, ...args: unknown[]) => void; export {};