@sprucelabs/spruce-cli
Version:
Command line interface for building Spruce skills.
35 lines (34 loc) • 2.17 kB
TypeScript
import { ConnectionOptions } from '@sprucelabs/mercury-client';
import { HealthCheckResults } from '@sprucelabs/spruce-skill-utils';
import ActionExecuter from '../features/ActionExecuter';
import FeatureCommandAttacher from '../features/FeatureCommandAttacher';
import { FeatureCode, InstallFeatureOptions } from '../features/features.types';
import { GlobalEmitter } from '../GlobalEmitter';
import ServiceFactory from '../services/ServiceFactory';
import { ApiClientFactory } from '../types/apiClient.types';
import { CliBootOptions, CliInterface, HealthOptions } from '../types/cli.types';
export default class Cli implements CliInterface {
private cwd;
private featureInstaller;
private serviceFactory;
readonly emitter: GlobalEmitter;
private static apiClients;
private attacher?;
private actionExecuter?;
private constructor();
static resetApiClients(): Promise<void>;
getAttacher(): FeatureCommandAttacher | undefined;
getActionExecuter(): ActionExecuter | undefined;
on(...args: any[]): Promise<void>;
off(...args: any[]): Promise<number>;
emit(...args: any[]): Promise<import("@sprucelabs/mercury-types").MercuryAggregateResponse<Pick<import("@sprucelabs/schema").SchemaStaticValues<any, false, string, import("@sprucelabs/schema").StaticSchemaAllValues<any, false>>, string>>>;
emitAndFlattenResponses(...args: any[]): Promise<Pick<import("@sprucelabs/schema").SchemaStaticValues<any, false, string, import("@sprucelabs/schema").StaticSchemaAllValues<any, false>>, string>[]>;
installFeatures(options: InstallFeatureOptions): Promise<import("../features/features.types").FeatureInstallResponse>;
getFeature<C extends FeatureCode>(code: C): import("../features/features.types").FeatureMap[C];
checkHealth(options?: HealthOptions): Promise<HealthCheckResults>;
static Boot(options?: CliBootOptions): Promise<CliInterface>;
private static loadCommandBlocks;
private static loadOptionOverrides;
static buildApiClientFactory(cwd: string, serviceFactory: ServiceFactory, bootOptions?: CliBootOptions & ConnectionOptions): ApiClientFactory;
private static connectToApi;
}