import Command, { flags } from '../base'; import { OpCommand, OpsYml, OpWorkflow, RegistryAuth, Config } from './../types'; import { OpPipeline, OpService, Ops } from './../types/OpsYml'; import { BuildOptions } from '../types/Docker'; export default class Publish extends Command { static description: string; static flags: flags.Input; static args: { name: string; description: string; required: boolean; }[]; resolvePath: (opPath: string) => string; checkDocker: () => Promise; getOpsAndWorkflows: (opPath: string) => Promise; convertPipelinesToWorkflows: (pipelines: OpPipeline[], opPath: string) => { pipelineWorkflows: OpWorkflow[]; pipelineCommands: OpCommand[]; }; choosePublishKind: (commands: OpCommand[], pipelines: OpPipeline[]) => Promise; selectOpsAndWorkflows: (commandsOrPipelines: string, commands: OpCommand[], workflows: OpWorkflow[]) => Promise<{ selectedCommands: OpCommand[]; selectedWorkflows: never[]; } | { selectedCommands: never[]; selectedWorkflows: OpWorkflow[]; }>; selectOps: (ops: OpCommand[]) => Promise; selectWorkflows: (workflows: OpWorkflow[]) => Promise; checkForExistingVersion: (name: string, version: string) => Promise; ensureAvailableVersion: (opPath: string, op: any, options: BuildOptions) => Promise; getMaxSemver: (versions: any) => Promise; bumpUpVersion: (teamName: string, opName: string, version: string) => Promise; filterOps: (ops: Array, names: Array) => (OpCommand | OpPipeline | OpService)[]; getRegistryAuth: (name: string, version: string) => Promise; promptForChangelog: (opName: any, opVersion: any) => Promise; opsPublishLoop: (opCommands: OpCommand[], version: string, config: Config, changelog: string | undefined) => Promise; pipelineCommandsPublishLoop: (pipelineCommands: OpCommand[], version: string, config: Config) => Promise; sleep: (ms: any) => Promise; workflowsPublishLoop: (opWorkflows: OpWorkflow[], version: string, config: Config, changelog: string | undefined) => Promise; eventsWarning: (opsToBuild: (OpCommand | OpPipeline | OpService | OpWorkflow)[], teamName: string) => void; sendAnalytics: (publishType: string, opOrWorkflow: OpCommand | OpWorkflow, config: Config) => void; validateBilling: (config: Config, op: OpCommand | OpWorkflow) => Promise; _validateChangelog(input: string): true | "You need to provide a publish changelog of your workflow before continuing"; _selectOption: (ops: Ops, name: string) => Promise; run(): Promise; }