UNPKG

@sprucelabs/spruce-cli

Version:

Command line interface for building Spruce skills.

80 lines (79 loc) 2.51 kB
import { SchemaValues } from '@sprucelabs/schema'; import AbstractAction from '../../AbstractAction'; import { FeatureActionResponse } from '../../features.types'; declare const optionsSchema: { id: string; description: string; fields: { contractDestinationDir: { label: "Contract destination"; type: "text"; hint: "Where I will generate event contracts."; defaultValue: "#spruce/events"; options: undefined; }; schemaTypesLookupDir: { label: "Schema types lookup directory"; type: "text"; hint: "Where I will lookup schema types and interfaces."; defaultValue: "#spruce/schemas"; options: undefined; }; shouldSyncOnlyCoreEvents: { label: "Sync only core events"; type: "boolean"; hint: "For use in @sprucelabs/mercury-types"; options: undefined; }; skillEventContractTypesFile: { label: "Event signature types file"; type: "text"; defaultValue: "@sprucelabs/mercury-types/build/types/mercury.types"; options: undefined; }; eventBuilderFile: { label: "Event builder file"; type: "text"; defaultValue: "@sprucelabs/mercury-types"; options: undefined; }; nameReadable: { isRequired: true; label: "Readable name"; type: "text"; hint: "The name people will read"; options: undefined; }; nameKebab: { label: string; hint: string; isRequired: true; type: "text"; options: undefined; }; nameCamel: { isRequired: true; label: "Camel case name"; type: "text"; hint: "camelCase version of the name"; options: undefined; }; isGlobal: { type: "boolean"; label: string; hint: string; }; version: { type: "text"; label: string; isPrivate: true; }; }; }; type OptionsSchema = typeof optionsSchema; export default class CreateAction extends AbstractAction<OptionsSchema> { optionsSchema: OptionsSchema; invocationMessage: string; execute(options: SchemaValues<OptionsSchema>): Promise<FeatureActionResponse>; } export {};