UNPKG

@ably/cli

Version:

Ably CLI for Pub/Sub, Chat and Spaces

53 lines (52 loc) 3.11 kB
import { AblyBaseCommand } from "./base-command.js"; import { ControlApi } from "./services/control-api.js"; import { BaseFlags } from "./types/cli.js"; export declare abstract class ControlBaseCommand extends AblyBaseCommand { static globalFlags: { "access-token": import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>; "api-key": import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>; "client-id": import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>; "control-host": import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>; env: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>; endpoint: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>; host: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>; port: import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>; tlsPort: import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>; tls: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>; json: import("@oclif/core/interfaces").BooleanFlag<boolean>; "pretty-json": import("@oclif/core/interfaces").BooleanFlag<boolean>; token: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>; verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>; "web-cli-help": import("@oclif/core/interfaces").BooleanFlag<boolean>; }; /** * Create a Control API instance for making requests */ protected createControlApi(flags: BaseFlags): ControlApi; protected formatDate(timestamp: number): string; /** * Resolves the app ID from the flags, current configuration, or interactive prompt * @param flags The command flags * @returns The app ID */ protected resolveAppId(flags: BaseFlags): Promise<string>; /** * Resolves an app ID from a name or ID * @param appNameOrId The app name or ID to resolve * @returns The app ID */ protected resolveAppIdFromNameOrId(appNameOrId: string): Promise<string>; /** * Prompts the user to select an app * @returns The selected app ID */ protected promptForApp(): Promise<string>; /** * Simple validation to check if a string looks like an app ID (UUID) */ private isValidAppId; /** * Run the Control API command with standard error handling */ protected runControlCommand<T>(flags: BaseFlags, apiCall: (api: ControlApi) => Promise<T>, errorMessage?: string): Promise<T | null>; }