import type { ILogger, ILoggerFactory } from "@uipath/resource-builder-sdk"; /** * Fill a message template from the arguments the SDK passed alongside it. * * `{name}` is looked up on the first argument when that is a plain object — * the shape the SDK uses. `%s` and friends consume arguments in order. A * placeholder with nothing to fill it is left as written rather than replaced * with "undefined", so a template the SDK logs with no arguments at all still * reads as a template. * * Arguments no placeholder consumed are appended, so nothing the SDK meant to * report is dropped. */ export declare function interpolate(message: string, args: unknown[]): string; /** * The CLI's `ILoggerFactory` for the resource engine. * * The SDK's own factory prefixes each line with a timestamp and its component * name; `logger` already stamps its own lines, so only the component name is * carried over — it is what tells a `solution resource refresh` line apart * from a `solution upload` one in a `--log-file`. */ export declare class CliResourceBuilderLoggerFactory implements ILoggerFactory { create(target: (new (...args: never[]) => unknown) | string): ILogger; }