import { Method as HTTPMethod, AxiosRequestConfig as HTTPConfig, AxiosResponse as HTTPResponse } from "axios"; import { Command as CommandType } from "commander"; export type Secret = { id: number; tenantUrl: string; customClient: boolean; client_id: string; client_secret: string; access_token: string; expires_in: number; expires_after: number; refresh_token: string; token_url: string; authorization_url: string; token_type: string; jti: string; scope: string; id_token: string; authorization_flow: GrantType; }; export declare const ALLOWED_SECRET_TYPES: string[]; export { HTTPMethod, HTTPConfig, HTTPResponse }; export type In = "query" | "body" | "header" | "path"; export type DataType = "boolean" | "string" | "number"; export type ParameterMapping = { name: string; in: In; source: { type: "option"; name: string; dataType: DataType; } | { type: "value"; value: any; }; }; export type ParameterMappings = Array; export declare enum LogLevel { INACTIVE = 1, ERROR = 2, WARN = 3, INFO = 4, DEBUG = 5, TRACE = 6 } export type JSONOneOf = { oneOf: Array; }; export type JSONObject = { type: "object"; description?: string; properties: { [key: string]: JSONSchema; }; required?: Array; }; export type JSONSimpleType = { type: DataType; description?: string; enum?: Array; default?: boolean | string | number; }; export type JSONReference = { $ref: string; }; // @ts-expect-error Type alias 'Schema' circularly references itself.ts(2456) export type JSONSchema = JSONObject | JSONSimpleType | JSONReference | JSONOneOf; export type Parameter = { name: string; in: In; description: string; required?: boolean; allowEmptyValue?: boolean; schema: JSONSchema; }; export type Operation = { operationId: string; parameters?: Array; summary?: string; description?: string; deprecated?: boolean; "x-deprecation-new-command"?: string; "x-deprecated-with-wave"?: string; "x-decommissioned-after-wave"?: string; "x-deprecation-sap-help-url"?: string; "x-requestbody-fileonly"?: boolean; "x-user-to-confirm"?: string; "x-read-path"?: string; requestBody?: { description: string; content: { [contentType: string]: { schema: JSONSchema | JSONReference; }; }; required?: boolean; }; responses?: { [httpStatusCode: number]: unknown; }; }; export type HTTPMethodPath = { [method in HTTPMethod]?: Operation; }; export type Parameters = Array; export type ParameterPath = { parameters?: Parameters; }; export type Discovery = { openapi: string; info: { ["x-document-version"]: string; version: string; }; tags: Array<{ name: string; description: string; }>; paths: { [path: string]: HTTPMethodPath | ParameterPath; }; components?: { parameters?: { [parameter: string]: Parameter; }; schemas?: { [schema: string]: JSONSchema; }; }; }; export declare const CHARACTERS: string[]; export type PackageJson = { name: string; description: string; version: string; bin?: { [key: string]: string; }; engines: { node: string; }; }; export type DiscoveryMetadata = { tenant: string; addedAt: number; hash: string; }; export type KeyValuePair = { [key: string]: any; }; export type DefaultFunction = () => Promise; export type ChoicesFunction = () => Promise>; export type Choices = Array; export type Option = { longName: string; description: string; default?: string | DefaultFunction; required?: boolean; choices?: Choices | ChoicesFunction; args?: Array<{ name: string; optional?: boolean; }>; hidden?: boolean; prompts?: { initial?: any; message: string | (() => string); type: "confirm" | "text" | "password" | "multiselect" | "number" | "select"; inputValidator?: (value: any) => boolean; }; }; export type HandlerProps = { command: string; args: KeyValuePair; options: KeyValuePair; }; export type CommanderHandler = (...args: any[]) => void | Promise; export type Handler = (command: CommandType) => Promise; export type CommandsArgument = { argument: string; description: string; }; export type TopCommand = { type: "topCommand"; command: string; description: string; subCommands: Array; options?: Array