import type { ServiceStatus } from './service.js'; import type { CliContext } from '../context/create-context.js'; import type { MaybePromise, ServiceDefinition, ServiceStartResult } from './service.js'; type PreparedValue = TPrepared | undefined; export declare class ContainerStoppedError extends Error { readonly serviceName: string; readonly tableDetail: string; readonly logs: string; constructor(message: string, serviceName: string, tableDetail: string, logs: string); } export declare function containerStatus(name: string, serviceName: string, detail: string): Promise; export declare function stopContainer(name: string, verbose?: boolean): Promise; export declare function tailContainerLogs(name: string): Promise; export declare abstract class DockerService implements ServiceDefinition { abstract key: string; abstract name: string; readonly logsEnabled: boolean; readonly runQuiet: boolean; abstract getContainer(context: CliContext): string; abstract getDockerArgs(context: CliContext, options: TOptions, prepared: PreparedValue): MaybePromise; getDetail(_context: CliContext): MaybePromise; getLogin(_context: CliContext): MaybePromise; prepare(_context: CliContext, _options: TOptions, _status: ServiceStatus): MaybePromise>; canReuse(_context: CliContext, _options: TOptions, _prepared: PreparedValue, status: ServiceStatus): MaybePromise; beforeRun(_context: CliContext, _options: TOptions, _prepared: PreparedValue): MaybePromise; afterRun(_context: CliContext, _options: TOptions, _prepared: PreparedValue): MaybePromise; getEnv(_context: CliContext, _options: TOptions, _prepared: PreparedValue): MaybePromise; alreadyRunningMessage(status: ServiceStatus): string; startedMessage(_context: CliContext, _options: TOptions, _prepared: PreparedValue): string; stoppedMessage(): string; status(context: CliContext): Promise; start(context: CliContext, options: TOptions): Promise; stop(context: CliContext): Promise; logs(context: CliContext): Promise; } export declare abstract class SharedDockerService extends DockerService { } export {}; //# sourceMappingURL=docker-service.d.ts.map