import { ScapiSchemasCommand } from '../../../utils/scapi/schemas.js'; /** * Response type for the get command when using --json flag. */ interface GetOutput { apiFamily: string; apiName: string; apiVersion: string; schema: Record; } /** * Command to get a specific SCAPI schema. * * By default, outputs collapsed schema for context efficiency (ideal for agentic use). * Use --expand-* flags to selectively expand specific paths, schemas, or examples. * Use --expand-all to get the full, unmodified schema. */ export default class ScapiSchemasGet extends ScapiSchemasCommand { static args: { apiFamily: import("@oclif/core/interfaces").Arg>; apiName: import("@oclif/core/interfaces").Arg>; apiVersion: import("@oclif/core/interfaces").Arg>; }; static description: string; static enableJsonFlag: boolean; static examples: string[]; static flags: { 'expand-paths': import("@oclif/core/interfaces").OptionFlag; 'expand-schemas': import("@oclif/core/interfaces").OptionFlag; 'expand-examples': import("@oclif/core/interfaces").OptionFlag; 'expand-custom-properties': import("@oclif/core/interfaces").BooleanFlag; 'expand-all': import("@oclif/core/interfaces").BooleanFlag; 'list-paths': import("@oclif/core/interfaces").BooleanFlag; 'list-schemas': import("@oclif/core/interfaces").BooleanFlag; 'list-examples': import("@oclif/core/interfaces").BooleanFlag; yaml: import("@oclif/core/interfaces").BooleanFlag; 'client-id': import("@oclif/core/interfaces").OptionFlag; 'client-secret': import("@oclif/core/interfaces").OptionFlag; 'auth-scope': import("@oclif/core/interfaces").OptionFlag; 'short-code': import("@oclif/core/interfaces").OptionFlag; 'tenant-id': import("@oclif/core/interfaces").OptionFlag; 'auth-methods': import("@oclif/core/interfaces").OptionFlag; 'user-auth': import("@oclif/core/interfaces").BooleanFlag; 'account-manager-host': import("@oclif/core/interfaces").OptionFlag; 'jwt-cert': import("@oclif/core/interfaces").OptionFlag; 'jwt-key': import("@oclif/core/interfaces").OptionFlag; 'jwt-passphrase': import("@oclif/core/interfaces").OptionFlag; 'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>; debug: import("@oclif/core/interfaces").BooleanFlag; json: import("@oclif/core/interfaces").BooleanFlag; jsonl: import("@oclif/core/interfaces").BooleanFlag; lang: import("@oclif/core/interfaces").OptionFlag; config: import("@oclif/core/interfaces").OptionFlag; instance: import("@oclif/core/interfaces").OptionFlag; 'project-directory': import("@oclif/core/interfaces").OptionFlag; 'extra-query': import("@oclif/core/interfaces").OptionFlag; 'extra-body': import("@oclif/core/interfaces").OptionFlag; 'extra-headers': import("@oclif/core/interfaces").OptionFlag; }; run(): Promise; /** * Build expansion info string for the log message. */ private getExpansionInfo; /** * Check if a value is a non-empty object (not an array). */ private isNonEmptyObject; /** * Output a list of items (paths, schemas, or examples). */ private outputList; /** * Serialize object to YAML format. * Uses a simple JSON-to-YAML conversion for basic YAML output. */ private serializeToYaml; /** * Serialize an array to YAML format. */ private serializeYamlArray; /** * Serialize an object to YAML format. */ private serializeYamlObject; /** * Serialize a string value to YAML, quoting if necessary. */ private serializeYamlString; } export {};