import type * as commander from 'commander'; import type { Action, JSONObject } from '@dynatrace/openkit-js'; import type { CliFlagOptions, FrozenResolvedCliOptions, ResolvedCliOptions } from './utils/config/cli-options'; export interface BootstrapOptions { program: commander.OptionValues; commandName: string; headerText: string; run: (options: FrozenResolvedCliOptions, rootAction?: Action) => Promise; argsConfig?: Partial & Record; skipDoneMessage?: boolean; /** When true, treat this invocation as a development run (affects defaults) */ isDev?: boolean; /** When true, start the parallelized process of gathering outdated libraries to be shown later */ startPackageVersionCheck?: boolean; beforeConfigFreeze?: (options: ResolvedCliOptions) => Promise; onInitBizEventPayload?: (options: FrozenResolvedCliOptions) => Promise | JSONObject; } /** * Bootstrap the CLI command. * Handles common initialization steps including: * - Logger initialization * - Config loading and merging * - Telemetry initialization * - OpenKit action creation * - Reporting command args * * @param options - Bootstrap options containing program options, command name, and header text. * @returns Object containing the resolved options and the root OpenKit action. */ export declare function bootstrap(options: BootstrapOptions): Promise;