import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface IntegrationCustomAuthActionConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/integration_custom_auth_action#id IntegrationCustomAuthAction#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id?: string; /** * The ID of the integration this action is associated with. The integration is required to be of type `custom-rest-actions` and its credentials type set as `userDefinedOAuth`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/integration_custom_auth_action#integration_id IntegrationCustomAuthAction#integration_id} */ readonly integrationId: string; /** * Name of the action to override the default name. Can be up to 256 characters long * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/integration_custom_auth_action#name IntegrationCustomAuthAction#name} */ readonly name?: string; /** * config_request block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/integration_custom_auth_action#config_request IntegrationCustomAuthAction#config_request} */ readonly configRequest?: IntegrationCustomAuthActionConfigRequest; /** * config_response block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/integration_custom_auth_action#config_response IntegrationCustomAuthAction#config_response} */ readonly configResponse?: IntegrationCustomAuthActionConfigResponse; } export interface IntegrationCustomAuthActionConfigRequest { /** * Map of headers in name, value pairs to include in request. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/integration_custom_auth_action#headers IntegrationCustomAuthAction#headers} */ readonly headers?: { [key: string]: string; }; /** * Velocity template to define request body sent to 3rd party service. Any instances of '${' must be properly escaped as '$${' * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/integration_custom_auth_action#request_template IntegrationCustomAuthAction#request_template} */ readonly requestTemplate?: string; /** * HTTP method to use for request (GET | PUT | POST | PATCH | DELETE). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/integration_custom_auth_action#request_type IntegrationCustomAuthAction#request_type} */ readonly requestType: string; /** * URL that may include placeholders for requests to 3rd party service. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/integration_custom_auth_action#request_url_template IntegrationCustomAuthAction#request_url_template} */ readonly requestUrlTemplate: string; } export declare function integrationCustomAuthActionConfigRequestToTerraform(struct?: IntegrationCustomAuthActionConfigRequestOutputReference | IntegrationCustomAuthActionConfigRequest): any; export declare function integrationCustomAuthActionConfigRequestToHclTerraform(struct?: IntegrationCustomAuthActionConfigRequestOutputReference | IntegrationCustomAuthActionConfigRequest): any; export declare class IntegrationCustomAuthActionConfigRequestOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): IntegrationCustomAuthActionConfigRequest | undefined; set internalValue(value: IntegrationCustomAuthActionConfigRequest | undefined); private _headers?; get headers(): { [key: string]: string; }; set headers(value: { [key: string]: string; }); resetHeaders(): void; get headersInput(): { [key: string]: string; }; private _requestTemplate?; get requestTemplate(): string; set requestTemplate(value: string); resetRequestTemplate(): void; get requestTemplateInput(): string; private _requestType?; get requestType(): string; set requestType(value: string); get requestTypeInput(): string; private _requestUrlTemplate?; get requestUrlTemplate(): string; set requestUrlTemplate(value: string); get requestUrlTemplateInput(): string; } export interface IntegrationCustomAuthActionConfigResponse { /** * Velocity template to build response to return from Action. Any instances of '${' must be properly escaped as '$${'. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/integration_custom_auth_action#success_template IntegrationCustomAuthAction#success_template} */ readonly successTemplate?: string; /** * Map 'attribute name' and 'JSON path' pairs used to extract data from REST response. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/integration_custom_auth_action#translation_map IntegrationCustomAuthAction#translation_map} */ readonly translationMap?: { [key: string]: string; }; /** * Map 'attribute name' and 'default value' pairs used as fallback values if JSON path extraction fails for specified key. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/integration_custom_auth_action#translation_map_defaults IntegrationCustomAuthAction#translation_map_defaults} */ readonly translationMapDefaults?: { [key: string]: string; }; } export declare function integrationCustomAuthActionConfigResponseToTerraform(struct?: IntegrationCustomAuthActionConfigResponseOutputReference | IntegrationCustomAuthActionConfigResponse): any; export declare function integrationCustomAuthActionConfigResponseToHclTerraform(struct?: IntegrationCustomAuthActionConfigResponseOutputReference | IntegrationCustomAuthActionConfigResponse): any; export declare class IntegrationCustomAuthActionConfigResponseOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): IntegrationCustomAuthActionConfigResponse | undefined; set internalValue(value: IntegrationCustomAuthActionConfigResponse | undefined); private _successTemplate?; get successTemplate(): string; set successTemplate(value: string); resetSuccessTemplate(): void; get successTemplateInput(): string; private _translationMap?; get translationMap(): { [key: string]: string; }; set translationMap(value: { [key: string]: string; }); resetTranslationMap(): void; get translationMapInput(): { [key: string]: string; }; private _translationMapDefaults?; get translationMapDefaults(): { [key: string]: string; }; set translationMapDefaults(value: { [key: string]: string; }); resetTranslationMapDefaults(): void; get translationMapDefaultsInput(): { [key: string]: string; }; } /** * Represents a {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/integration_custom_auth_action genesyscloud_integration_custom_auth_action} */ export declare class IntegrationCustomAuthAction extends cdktf.TerraformResource { static readonly tfResourceType = "genesyscloud_integration_custom_auth_action"; /** * Generates CDKTF code for importing a IntegrationCustomAuthAction resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the IntegrationCustomAuthAction to import * @param importFromId The id of the existing IntegrationCustomAuthAction that should be imported. Refer to the {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/integration_custom_auth_action#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the IntegrationCustomAuthAction to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/integration_custom_auth_action genesyscloud_integration_custom_auth_action} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options IntegrationCustomAuthActionConfig */ constructor(scope: Construct, id: string, config: IntegrationCustomAuthActionConfig); private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _integrationId?; get integrationId(): string; set integrationId(value: string); get integrationIdInput(): string; private _name?; get name(): string; set name(value: string); resetName(): void; get nameInput(): string; private _configRequest; get configRequest(): IntegrationCustomAuthActionConfigRequestOutputReference; putConfigRequest(value: IntegrationCustomAuthActionConfigRequest): void; resetConfigRequest(): void; get configRequestInput(): IntegrationCustomAuthActionConfigRequest; private _configResponse; get configResponse(): IntegrationCustomAuthActionConfigResponseOutputReference; putConfigResponse(value: IntegrationCustomAuthActionConfigResponse): void; resetConfigResponse(): void; get configResponseInput(): IntegrationCustomAuthActionConfigResponse; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }