UNPKG

@apistudio/apim-cli

Version:

CLI for API Management Products

725 lines 20.4 kB
/** * Generated TypeScript interfaces for API resources * DO NOT EDIT MANUALLY - This file is generated */ export type KindType = 'InvokeAWSLambda' | 'ValidateAPISpecification' | 'LoadBalancer' | 'Invoke' | 'IAM' | 'RateLimit' | 'RateLimitDef' | 'InboundBulkHead' | 'SetMediaType' | 'InboundMessaging' | 'AuthorizeUser' | 'SetContextVariable' | 'WebMethodsISService' | 'Log' | 'MonitorTraffic' | 'HTTPInvoke' | 'InvokeMessagingExtension' | 'TransformRequest' | 'TransformResponse' | 'MessageConfig' | 'ErrorProcessing'; export interface ApiResource { kind: KindType; apiVersion: string; metadata: { name: string; version: string; description?: string; namespace?: string; tags?: string[]; type?: string; labels?: { gatewayTypes?: string[]; }; }; spec: Record<string, any>; } export type KindApiVersionType = InvokeAWSLambda_api_ibm_com_v1 | ValidateAPISpecification_api_ibm_com_v1 | LoadBalancer_api_ibm_com_v1 | Invoke_api_ibm_com_v1 | IAM_api_ibm_com_v1 | RateLimit_api_ibm_com_v1 | RateLimitDef_api_ibm_com_v1 | InboundBulkHead_api_ibm_com_v1 | SetMediaType_api_ibm_com_v1 | InboundMessaging_api_ibm_com_v1 | AuthorizeUser_api_ibm_com_v1 | SetContextVariable_api_ibm_com_v1 | WebMethodsISService_api_ibm_com_v1 | Log_api_ibm_com_v1 | MonitorTraffic_api_ibm_com_v1 | HTTPInvoke_api_ibm_com_v1 | InvokeMessagingExtension_api_ibm_com_v1 | TransformRequest_api_ibm_com_v1 | TransformResponse_api_ibm_com_v1 | MessageConfig_api_ibm_com_v1 | ErrorProcessing_api_ibm_com_v1; export interface set { key: string; value: string; } export interface Namespaces { prefix?: string | undefined; URI?: string | undefined; } export interface SetPayload { "content-types"?: ContentTypes[] | undefined; "defaultContentType"?: string | undefined; xsl?: Xsl[] | undefined; } export interface ContentTypes { "application/json"?: string | undefined; "application/xml"?: string | undefined; "text/plain"?: string | undefined; } export interface Xsl { feature?: Feature[] | undefined; $path?: string | undefined; content?: string | undefined; } export interface Feature { name?: string | undefined; value?: string | undefined; } export interface InvokeAWSLambda_api_ibm_com_v1 { kind: KindType; apiVersion: string; metadata: { description?: string; name: string; namespace?: string; tags?: string[]; type?: string; version: string; labels?: { gatewayTypes?: string[]; }; }; spec: { functionName?: string; qualifier?: string; invocationType?: string; region?: string; awsAuthType?: { accessSecret: string; }; tlsConnectionProfile?: string; input?: string; output?: string; clientConfig?: { socketTimeout?: number; connectionTimeout?: number; requestTimeout?: number; clientExecutionTimeout?: number; clientRetryCount?: number; connectionExpirationTimeout?: number; enableExpectContinue?: boolean; enableGzip?: boolean; enableHostPrefixInjection?: boolean; maxConnectionIdleTime?: number; responseMetadataCacheSize?: number; enableThrottledRetries?: boolean; enableKeepAlive?: boolean; enableResponseMetadataCache?: boolean; signatureAlgorithm?: string; tcpSendBufferSizeHint?: number; tcpReceiveBufferSizeHint?: number; }; extensions?: { 'webm-gateway'?: { apiVersion?: string; spec?: { condition?: string; lambdaConfig?: { alias?: string; }; clientConfig?: { retryOnErrorCount?: number; }; request_processing?: { transformations: { set?: set[]; remove?: string[]; setPayload?: SetPayload; }; useIncomingHeaders?: boolean; }; response_processing?: { transformations: { abortAPIExecutionForFailure?: boolean; copyEntireResponse?: boolean; set?: set[]; }; }; namespaces?: Namespaces[]; }; }; }; }; } export interface ValidateAPISpecification_api_ibm_com_v1 { kind: KindType; apiVersion: string; metadata: { description?: string; name: string; namespace?: string; tags?: string[]; type?: string; version: string; labels?: { gatewayTypes?: string[]; }; }; spec: any; } export interface LoadBalancer_api_ibm_com_v1 { kind: KindType; apiVersion: string; metadata: { description?: string; name: string; namespace?: string; tags?: string[]; type?: string; version: string; labels?: { gatewayTypes?: string[]; }; }; spec: { input?: string; output?: string; roundRobinHttp?: { verb?: string; endpoints?: Record<string, any>[]; }; extensions?: { 'webm-gateway'?: { apiVersion?: string; spec?: { endpoints?: Record<string, any>[]; }; }; }; }; } export interface Invoke_api_ibm_com_v1 { kind: "Invoke"; apiVersion: string; metadata: Metadata; spec: { input?: string; output?: string; cache?: { expire?: { static?: { seconds?: number; }; }; scope?: { narrowScope?: {}; }; }; endpoint?: { [key: string]: { verb?: string; status_exception?: { pattern?: number; }; target?: { tlsClientProfile?: string; url?: string; urlType?: string; version?: string; timeout?: number; compression?: boolean; chunkedUploads?: boolean; persistentConnection?: boolean; }; }; }; }; } export interface IAM_api_ibm_com_v1 { kind: KindType; apiVersion: string; metadata: { description?: string; name: string; namespace?: string; tags?: string[]; type?: string; version: string; labels?: { gatewayTypes?: string[]; }; }; spec: { accessControl?: any[][]; extensions?: { 'webm-gateway'?: { apiVersion?: string; spec?: { authenticationMode?: string; allowAnonymous?: {}; triggerPolicyViolation?: boolean; accessControl?: { kerberos?: { applicationSecurity?: { mode?: string; }; servicePrincipleName?: string; servicePrinciplePassword?: string; }; openIdConnect?: { applicationSecurity?: { mode?: string; }; }; payloadElement?: { applicationSecurity?: { mode?: string; }; payLoadIdentifier?: any[]; }; }; }; }; }; }; } export interface RateLimit_api_ibm_com_v1 { kind: KindType; apiVersion: string; metadata: { description?: string; name: string; namespace?: string; tags?: string[]; type?: string; version: string; labels?: { gatewayTypes?: string[]; }; }; spec: { target?: string; limits?: Record<string, any>[]; extensions?: { 'webm-gateway'?: { apiVersion?: string; spec?: { destination: Record<string, any>[]; }; }; }; }; } export interface RateLimitDef_api_ibm_com_v1 { kind: KindType; apiVersion: string; metadata: { description?: string; name: string; namespace?: string; tags?: string[]; type?: string; version: string; labels?: { gatewayTypes?: string[]; }; }; spec: { consumerSpecific?: boolean; dynamicValue?: string; max?: number; intervalLen?: number; intervalUnit?: string; extensions?: { 'wm-gateway'?: { apiVersion?: string; spec?: { alertMessage?: string; alertFrequency?: string; }; }; }; }; } export interface InboundBulkHead_api_ibm_com_v1 { kind: KindType; apiVersion: string; metadata: { description?: string; name: string; namespace?: string; tags?: string[]; type?: string; version: string; labels?: { gatewayTypes?: string[]; }; }; spec: { maxConcurrentCalls?: number; enableBulkheadForCallbacks?: { maxConcurrentCallbacks?: number; }; retryAfterResponseHeader?: { retryAfterValue?: number; }; }; } export interface SetMediaType_api_ibm_com_v1 { kind: KindType; apiVersion: string; metadata: { description?: string; name: string; namespace?: string; tags?: string[]; type?: string; version: string; labels?: { gatewayTypes?: string[]; }; }; spec: { defaultAcceptHeader?: string; defaultContentType?: string; }; } export interface InboundMessaging_api_ibm_com_v1 { kind: KindType; apiVersion: string; metadata: { description?: string; name: string; namespace?: string; tags?: string[]; type?: string; version: string; labels?: { gatewayTypes?: string[]; }; }; spec: { alias?: string; source?: Record<string, any>[]; }; } export interface AuthorizeUser_api_ibm_com_v1 { kind: "AuthorizeUser"; apiVersion: string; metadata: Metadata; spec: { enabled?: boolean; users?: string[]; groups?: string[]; teams?: string[]; }; } export interface SetContextVariable_api_ibm_com_v1 { kind: "SetContextVariable"; apiVersion: string; metadata: Metadata; spec: { /** Can be enabled or disabled */ enabled?: boolean; condition?: string; namespaces?: { URI?: string; prefix?: string; }[]; /** * Multiple instances of variable can be given */ variable?: { /** The variable name */ name?: string; /** The variable value */ value?: string; }[]; }; } /** * The Context Variable related information is captured in the message WebMethodsISService. */ export interface WebMethodsISService_api_ibm_com_v1 { kind: "WebMethodsISService"; apiVersion: string; metadata: Metadata; spec: { enabled?: boolean; condition?: string; alias?: string; /** * Multiple instances of Service can be given */ services?: { /** The message specifies the information related to Service */ complyToISSpec?: boolean; name?: string; runAs?: string; }[]; }; } /** * Defines a message named Metadata */ export interface Metadata { description?: string; name: string; namespace?: string; tags?: string[]; type?: "REST" | "SWAGGER" | "SOAP" | "GRAPHQL" | "ODATA"; version: string; labels?: MetadataLabels; } export interface MetadataLabels { gatewayTypes?: string[]; } export interface Log_api_ibm_com_v1 { kind: KindType; apiVersion: string; metadata: { description?: string; name: string; namespace?: string; tags?: string[]; type?: string; version: string; labels?: { gatewayTypes?: string[]; }; }; spec: { enabled?: boolean; logRequestHeaders?: boolean; logResponseHeaders?: boolean; logRequestPayload?: boolean; logResponsePayload?: boolean; compressPayloads?: boolean; logGenerationFrequency?: string; destination?: any[]; }; } export interface MonitorTraffic_api_ibm_com_v1 { kind: KindType; apiVersion: string; metadata: { description?: string; name: string; namespace?: string; tags?: string[]; type?: string; version: string; labels?: { gatewayTypes?: string[]; }; }; spec: { enabled?: boolean; condition?: string; applications?: string[]; 'alert-configuration'?: { frequency?: string; interval?: string; message?: string; }; 'notify-on-breach'?: any[]; }; } export interface HTTPInvoke_api_ibm_com_v1 { kind: KindType; apiVersion: string; metadata: { description?: string; name: string; namespace?: string; tags?: string[]; type?: string; version: string; labels?: { gatewayTypes?: string[]; }; }; spec: { enabled?: boolean; condition?: string; endpoint?: { name: string; namespace?: string; version: string; }; namespaces?: Record<string, any>[]; request_processing?: { preProcessing?: string[]; transformations?: string[]; }; response_processing?: { postProcessing?: string[]; transformations?: string[]; }; }; } export interface InvokeMessagingExtension_api_ibm_com_v1 { kind: KindType; apiVersion: string; metadata: { description?: string; name: string; namespace?: string; tags?: string[]; type?: string; version: string; labels?: { gatewayTypes?: string[]; }; }; spec: { enabled?: boolean; condition?: string; messageConfig?: { name: string; namespace?: string; version: string; }; namespaces?: Record<string, any>[]; request_processing?: { preProcessing?: string[]; transformations?: string[]; }; response_processing?: { postProcessing?: string[]; transformations?: string[]; }; }; } export interface TransformRequest_api_ibm_com_v1 { kind: KindType; apiVersion: string; metadata: { description?: string; name: string; namespace?: string; tags?: string[]; type?: string; version: string; labels?: { gatewayTypes?: string[]; }; }; spec: { enabled?: boolean; condition?: string; transformations?: { namespaces?: Record<string, any>[]; setMethod?: string; webMethodsISService?: Record<string, any>[]; }; }; } export interface TransformResponse_api_ibm_com_v1 { kind: KindType; apiVersion: string; metadata: { description?: string; name: string; namespace?: string; tags?: string[]; type?: string; version: string; labels?: { gatewayTypes?: string[]; }; }; spec: { enabled?: boolean; condition?: string; transformations?: { namespaces?: Record<string, any>[]; setStatus?: { code?: string; message?: string; }; webMethodsISService?: Record<string, any>[]; }; }; } export interface MessageConfig_api_ibm_com_v1 { kind: KindType; apiVersion: string; metadata: { description?: string; name: string; namespace?: string; tags?: string[]; type?: string; version: string; labels?: { gatewayTypes?: string[]; }; }; spec: { connectionAlias?: string; destination?: { name?: string; type?: string; }; replyTo?: { name?: string; type?: string; }; ttl?: string; timeToWait?: string; deliveryMode?: string; property?: Record<string, any>[]; }; } export interface ErrorProcessing_api_ibm_com_v1 { kind: KindType; apiVersion: string; metadata: { description?: string; name: string; namespace?: string; tags?: string[]; type?: string; version: string; labels?: { gatewayTypes?: string[]; }; }; spec: { enabled?: boolean; condition?: string; 'pre-processing'?: { webMethodsISService?: Record<string, any>[]; xsl?: { href?: string; }; }; transformations?: { set?: Record<string, any>[]; remove?: string[]; setPayload?: { 'content-types'?: Record<string, any>[]; defaultContentType?: string; xsl?: { href?: string; }; }; namespaces?: Record<string, any>[]; sendNativeError?: boolean; }; 'post-processing'?: { webMethodsISService?: Record<string, any>[]; xsl?: { href?: string; }; }; }; } /** * Type guard to check if a resource is of a specific kind and API version */ export declare function isResourceOfType<T extends ApiResource>(resource: ApiResource, kind: KindType, apiVersion: string): resource is T; /** * Get the TypeScript interface name for a given kind and API version */ export declare function getInterfaceName(kind: KindType, apiVersion: string): string; /** * Map of original kind_apiVersion to TypeScript interface names */ export declare const interfaceNameMap: { "InvokeAWSLambda_api.ibm.com/v1": string; "ValidateAPISpecification_api.ibm.com/v1": string; "LoadBalancer_api.ibm.com/v1": string; "Invoke_api.ibm.com/v1": string; "IAM_api.ibm.com/v1": string; "RateLimit_api.ibm.com/v1": string; "RateLimitDef_api.ibm.com/v1": string; "InboundBulkHead_api.ibm.com/v1": string; "SetMediaType_api.ibm.com/v1": string; "InboundMessaging_api.ibm.com/v1": string; "AuthorizeUser_api.ibm.com/v1": string; "SetContextVariable_api.ibm.com/v1": string; "WebMethodsISService_api.ibm.com/v1": string; "Log_api.ibm.com/v1": string; "MonitorTraffic_api.ibm.com/v1": string; "HTTPInvoke_api.ibm.com/v1": string; "InvokeMessagingExtension_api.ibm.com/v1": string; "TransformRequest_api.ibm.com/v1": string; "TransformResponse_api.ibm.com/v1": string; "MessageConfig_api.ibm.com/v1": string; "ErrorProcessing_api.ibm.com/v1": string; }; //# sourceMappingURL=api-model-kinds.d.ts.map