import type { GatewayServiceRuntime } from "./service-runtime.js"; import type { GatewayServiceCommandConfig, GatewayServiceControlArgs, GatewayServiceEnv, GatewayServiceEnvArgs, GatewayServiceInstallArgs, GatewayServiceManageArgs, GatewayServiceRestartResult, GatewayServiceStartRepairIssue, GatewayServiceStartResult, GatewayServiceStageArgs, GatewayServiceState } from "./service-types.js"; export type { GatewayServiceCommandConfig, GatewayServiceControlArgs, GatewayServiceEnv, GatewayServiceEnvArgs, GatewayServiceInstallArgs, GatewayServiceManageArgs, GatewayServiceRestartResult, GatewayServiceStartRepairIssue, GatewayServiceStartResult, GatewayServiceStageArgs, GatewayServiceState, } from "./service-types.js"; export type GatewayService = { label: string; loadedText: string; notLoadedText: string; stage: (args: GatewayServiceStageArgs) => Promise; install: (args: GatewayServiceInstallArgs) => Promise; uninstall: (args: GatewayServiceManageArgs) => Promise; stop: (args: GatewayServiceControlArgs) => Promise; restart: (args: GatewayServiceControlArgs) => Promise; isLoaded: (args: GatewayServiceEnvArgs) => Promise; readCommand: (env: GatewayServiceEnv) => Promise; readRuntime: (env: GatewayServiceEnv) => Promise; }; export declare function formatGatewayServiceStartRepairIssues(issues: GatewayServiceStartRepairIssue[]): string; export declare function readGatewayServiceState(service: GatewayService, args?: GatewayServiceEnvArgs): Promise; export declare function startGatewayService(service: GatewayService, args: GatewayServiceControlArgs): Promise; export declare function describeGatewayServiceRestart(serviceNoun: string, result: GatewayServiceRestartResult): { scheduled: boolean; daemonActionResult: "restarted" | "scheduled"; message: string; progressMessage: string; }; export declare function resolveGatewayService(): GatewayService;