import { ResourceBase } from '../resource'; import { Value, List } from '../dataTypes'; export declare class S3Action { BucketName: Value; Key: Value; RoleArn: Value; constructor(properties: S3Action); } export declare class SqsAction { QueueUrl: Value; RoleArn: Value; UseBase64?: Value; constructor(properties: SqsAction); } export declare class PutItemInput { TableName: Value; constructor(properties: PutItemInput); } export declare class SnsAction { MessageFormat?: Value; RoleArn: Value; TargetArn: Value; constructor(properties: SnsAction); } export declare class FirehoseAction { DeliveryStreamName: Value; RoleArn: Value; Separator?: Value; constructor(properties: FirehoseAction); } export declare class LambdaAction { FunctionArn?: Value; constructor(properties: LambdaAction); } export declare class ElasticsearchAction { Endpoint: Value; Id: Value; Index: Value; RoleArn: Value; Type: Value; constructor(properties: ElasticsearchAction); } export declare class DynamoDBAction { HashKeyField: Value; HashKeyType?: Value; HashKeyValue: Value; PayloadField?: Value; RangeKeyField?: Value; RangeKeyType?: Value; RangeKeyValue?: Value; RoleArn: Value; TableName: Value; constructor(properties: DynamoDBAction); } export declare class KinesisAction { PartitionKey?: Value; RoleArn: Value; StreamName: Value; constructor(properties: KinesisAction); } export declare class Action { CloudwatchAlarm?: CloudwatchAlarmAction; CloudwatchMetric?: CloudwatchMetricAction; DynamoDB?: DynamoDBAction; DynamoDBv2?: DynamoDBv2Action; Elasticsearch?: ElasticsearchAction; Firehose?: FirehoseAction; IotAnalytics?: IotAnalyticsAction; Kinesis?: KinesisAction; Lambda?: LambdaAction; Republish?: RepublishAction; S3?: S3Action; Sns?: SnsAction; Sqs?: SqsAction; StepFunctions?: StepFunctionsAction; constructor(properties: Action); } export declare class IotAnalyticsAction { ChannelName: Value; RoleArn: Value; constructor(properties: IotAnalyticsAction); } export declare class RepublishAction { RoleArn: Value; Topic: Value; constructor(properties: RepublishAction); } export declare class StepFunctionsAction { ExecutionNamePrefix?: Value; RoleArn: Value; StateMachineName: Value; constructor(properties: StepFunctionsAction); } export declare class TopicRulePayload { Actions: List; AwsIotSqlVersion?: Value; Description?: Value; ErrorAction?: Action; RuleDisabled: Value; Sql: Value; constructor(properties: TopicRulePayload); } export declare class DynamoDBv2Action { PutItem?: PutItemInput; RoleArn?: Value; constructor(properties: DynamoDBv2Action); } export declare class CloudwatchAlarmAction { AlarmName: Value; RoleArn: Value; StateReason: Value; StateValue: Value; constructor(properties: CloudwatchAlarmAction); } export declare class CloudwatchMetricAction { MetricName: Value; MetricNamespace: Value; MetricTimestamp?: Value; MetricUnit: Value; MetricValue: Value; RoleArn: Value; constructor(properties: CloudwatchMetricAction); } export interface TopicRuleProperties { RuleName?: Value; TopicRulePayload: TopicRulePayload; } export default class TopicRule extends ResourceBase { static S3Action: typeof S3Action; static SqsAction: typeof SqsAction; static PutItemInput: typeof PutItemInput; static SnsAction: typeof SnsAction; static FirehoseAction: typeof FirehoseAction; static LambdaAction: typeof LambdaAction; static ElasticsearchAction: typeof ElasticsearchAction; static DynamoDBAction: typeof DynamoDBAction; static KinesisAction: typeof KinesisAction; static Action: typeof Action; static IotAnalyticsAction: typeof IotAnalyticsAction; static RepublishAction: typeof RepublishAction; static StepFunctionsAction: typeof StepFunctionsAction; static TopicRulePayload: typeof TopicRulePayload; static DynamoDBv2Action: typeof DynamoDBv2Action; static CloudwatchAlarmAction: typeof CloudwatchAlarmAction; static CloudwatchMetricAction: typeof CloudwatchMetricAction; constructor(properties: TopicRuleProperties); }