/** * ThoughtSpot Public REST API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * OpenAPI spec version: 2.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { HttpFile } from '../http/http'; /** * Storage setup configuration for a specific upload path. The populated fields depend on config_type: AWS_TO_S3_STORAGE: aws_account_id, trust_policy_template, setup_instructions. GCP_TO_S3_STORAGE: gcp_service_account_id, oidc_provider, trust_policy_template, setup_instructions. GCP_TO_GCS_STORAGE: service_account_email, required_role, setup_instructions. */ export class WebhookStorageSetupConfig { /** * Discriminator identifying the upload path. One of: AWS_TO_S3_STORAGE, GCP_TO_S3_STORAGE, GCP_TO_GCS_STORAGE. */ 'config_type': WebhookStorageSetupConfigConfigTypeEnum; /** * AWS Account ID of the platform. Populated for AWS_TO_S3_STORAGE. Include in your IAM role trust policy. */ 'aws_account_id'?: string | null; /** * GCP service account numeric ID of the platform (the \'sub\' claim in OIDC tokens). Populated for GCP_TO_S3_STORAGE. */ 'gcp_service_account_id'?: string | null; /** * OIDC identity provider URL. Populated for GCP_TO_S3_STORAGE; always \'accounts.google.com\' for GCP. */ 'oidc_provider'?: string | null; /** * Sample IAM trust policy JSON. Populated for AWS_TO_S3_STORAGE and GCP_TO_S3_STORAGE. */ 'trust_policy_template'?: any | null; /** * GCP service account email of the platform. Populated for GCP_TO_GCS_STORAGE. Grant it roles/iam.serviceAccountTokenCreator on your service account. */ 'service_account_email'?: string | null; /** * IAM role the customer must grant to the platform service account. Populated for GCP_TO_GCS_STORAGE. */ 'required_role'?: string | null; /** * Step-by-step instructions to configure the storage destination. */ 'setup_instructions': Array; static readonly discriminator: string | undefined = undefined; static readonly mapping: {[index: string]: string} | undefined = undefined; static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string, format: string}> = [ { "name": "config_type", "baseName": "config_type", "type": "WebhookStorageSetupConfigConfigTypeEnum", "format": "" }, { "name": "aws_account_id", "baseName": "aws_account_id", "type": "string", "format": "" }, { "name": "gcp_service_account_id", "baseName": "gcp_service_account_id", "type": "string", "format": "" }, { "name": "oidc_provider", "baseName": "oidc_provider", "type": "string", "format": "" }, { "name": "trust_policy_template", "baseName": "trust_policy_template", "type": "any", "format": "" }, { "name": "service_account_email", "baseName": "service_account_email", "type": "string", "format": "" }, { "name": "required_role", "baseName": "required_role", "type": "string", "format": "" }, { "name": "setup_instructions", "baseName": "setup_instructions", "type": "Array", "format": "" } ]; static getAttributeTypeMap() { return WebhookStorageSetupConfig.attributeTypeMap; } public constructor() { } } export type WebhookStorageSetupConfigConfigTypeEnum = "AWS_TO_S3_STORAGE" | "GCP_TO_S3_STORAGE" | "GCP_TO_GCS_STORAGE" ;