UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

55 lines (54 loc) 2.38 kB
import type { Construct } from 'constructs'; import type * as glue from '../../../aws-glue'; import * as iam from '../../../aws-iam'; import type { CfnDeliveryStream } from '../kinesisfirehose.generated'; /** * Options when binding a SchemaConfig to a Destination */ export interface SchemaConfigurationBindOptions { /** * The IAM Role that will be used by the Delivery Stream for access to the Glue data catalog for record format conversion. */ readonly role: iam.IRole; } /** * Options for creating a Schema for record format conversion from a `glue.CfnTable` */ export interface SchemaConfigurationFromCfnTableProps { /** * Specifies the table version for the output data schema. * * if set to `LATEST`, Firehose uses the most recent table version. This means that any updates to the table are automatically picked up. * * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-schemaconfiguration.html#cfn-kinesisfirehose-deliverystream-schemaconfiguration-versionid * @default `LATEST` */ readonly versionId?: string; /** * The region of the database the table is in. * * @default the region of the stack that contains the table reference is used */ readonly region?: string; } /** * Represents a schema configuration for Firehose S3 data record format conversion. * * @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-dataformatconversionconfiguration.html#cfn-kinesisfirehose-deliverystream-dataformatconversionconfiguration-schemaconfiguration */ export declare class SchemaConfiguration { private readonly databaseName; private readonly tableName; private readonly catalogId; private readonly databaseRegion; private readonly versionId; /** * Obtain schema configuration for data record format conversion from an `aws_glue.CfnTable` */ static fromCfnTable(table: glue.CfnTable, props?: SchemaConfigurationFromCfnTableProps): SchemaConfiguration; private constructor(); /** * Binds this Schema to the Destination, adding the necessary permissions to the Destination role. */ bind(scope: Construct, options: SchemaConfigurationBindOptions): CfnDeliveryStream.SchemaConfigurationProperty; }