import { ResourceBase, ResourceTag } from '../resource'; import { Value, List } from '../dataTypes'; export declare class Action { S3?: S3Action; CloudwatchAlarm?: CloudwatchAlarmAction; IotEvents?: IotEventsAction; Firehose?: FirehoseAction; Republish?: RepublishAction; Kafka?: KafkaAction; StepFunctions?: StepFunctionsAction; DynamoDB?: DynamoDBAction; Http?: HttpAction; OpenSearch?: OpenSearchAction; DynamoDBv2?: DynamoDBv2Action; CloudwatchMetric?: CloudwatchMetricAction; IotSiteWise?: IotSiteWiseAction; Elasticsearch?: ElasticsearchAction; Sqs?: SqsAction; Kinesis?: KinesisAction; CloudwatchLogs?: CloudwatchLogsAction; Timestream?: TimestreamAction; IotAnalytics?: IotAnalyticsAction; Sns?: SnsAction; Lambda?: LambdaAction; Location?: LocationAction; constructor(properties: Action); } export declare class AssetPropertyTimestamp { TimeInSeconds: Value; OffsetInNanos?: Value; constructor(properties: AssetPropertyTimestamp); } export declare class AssetPropertyValue { Quality?: Value; Value: AssetPropertyVariant; Timestamp: AssetPropertyTimestamp; constructor(properties: AssetPropertyValue); } export declare class AssetPropertyVariant { DoubleValue?: Value; BooleanValue?: Value; IntegerValue?: Value; StringValue?: Value; constructor(properties: AssetPropertyVariant); } export declare class CloudwatchAlarmAction { AlarmName: Value; StateReason: Value; StateValue: Value; RoleArn: Value; constructor(properties: CloudwatchAlarmAction); } export declare class CloudwatchLogsAction { BatchMode?: Value; LogGroupName: Value; RoleArn: Value; constructor(properties: CloudwatchLogsAction); } export declare class CloudwatchMetricAction { MetricName: Value; MetricValue: Value; MetricNamespace: Value; MetricUnit: Value; RoleArn: Value; MetricTimestamp?: Value; constructor(properties: CloudwatchMetricAction); } export declare class DynamoDBAction { TableName: Value; PayloadField?: Value; RangeKeyField?: Value; HashKeyField: Value; RangeKeyValue?: Value; RangeKeyType?: Value; HashKeyType?: Value; HashKeyValue: Value; RoleArn: Value; constructor(properties: DynamoDBAction); } export declare class DynamoDBv2Action { PutItem?: PutItemInput; RoleArn?: Value; constructor(properties: DynamoDBv2Action); } export declare class ElasticsearchAction { Type: Value; Endpoint: Value; Index: Value; Id: Value; RoleArn: Value; constructor(properties: ElasticsearchAction); } export declare class FirehoseAction { DeliveryStreamName: Value; BatchMode?: Value; RoleArn: Value; Separator?: Value; constructor(properties: FirehoseAction); } export declare class HttpAction { Headers?: List; Auth?: HttpAuthorization; ConfirmationUrl?: Value; Url: Value; constructor(properties: HttpAction); } export declare class HttpActionHeader { Value: Value; Key: Value; constructor(properties: HttpActionHeader); } export declare class HttpAuthorization { Sigv4?: SigV4Authorization; constructor(properties: HttpAuthorization); } export declare class IotAnalyticsAction { ChannelName: Value; BatchMode?: Value; RoleArn: Value; constructor(properties: IotAnalyticsAction); } export declare class IotEventsAction { InputName: Value; BatchMode?: Value; RoleArn: Value; MessageId?: Value; constructor(properties: IotEventsAction); } export declare class IotSiteWiseAction { PutAssetPropertyValueEntries: List; RoleArn: Value; constructor(properties: IotSiteWiseAction); } export declare class KafkaAction { Partition?: Value; ClientProperties: { [key: string]: Value; }; Headers?: List; Topic: Value; DestinationArn: Value; Key?: Value; constructor(properties: KafkaAction); } export declare class KafkaActionHeader { Value: Value; Key: Value; constructor(properties: KafkaActionHeader); } export declare class KinesisAction { StreamName: Value; PartitionKey?: Value; RoleArn: Value; constructor(properties: KinesisAction); } export declare class LambdaAction { FunctionArn?: Value; constructor(properties: LambdaAction); } export declare class LocationAction { TrackerName: Value; DeviceId: Value; Latitude: Value; Longitude: Value; Timestamp?: Timestamp; RoleArn: Value; constructor(properties: LocationAction); } export declare class OpenSearchAction { Type: Value; Endpoint: Value; Index: Value; Id: Value; RoleArn: Value; constructor(properties: OpenSearchAction); } export declare class PutAssetPropertyValueEntry { PropertyValues: List; EntryId?: Value; PropertyAlias?: Value; AssetId?: Value; PropertyId?: Value; constructor(properties: PutAssetPropertyValueEntry); } export declare class PutItemInput { TableName: Value; constructor(properties: PutItemInput); } export declare class RepublishAction { Qos?: Value; Headers?: RepublishActionHeaders; Topic: Value; RoleArn: Value; constructor(properties: RepublishAction); } export declare class RepublishActionHeaders { CorrelationData?: Value; UserProperties?: List; PayloadFormatIndicator?: Value; ContentType?: Value; MessageExpiry?: Value; ResponseTopic?: Value; constructor(properties: RepublishActionHeaders); } export declare class S3Action { BucketName: Value; CannedAcl?: Value; Key: Value; RoleArn: Value; constructor(properties: S3Action); } export declare class SigV4Authorization { ServiceName: Value; SigningRegion: Value; RoleArn: Value; constructor(properties: SigV4Authorization); } export declare class SnsAction { MessageFormat?: Value; TargetArn: Value; RoleArn: Value; constructor(properties: SnsAction); } export declare class SqsAction { UseBase64?: Value; RoleArn: Value; QueueUrl: Value; constructor(properties: SqsAction); } export declare class StepFunctionsAction { ExecutionNamePrefix?: Value; StateMachineName: Value; RoleArn: Value; constructor(properties: StepFunctionsAction); } export declare class Timestamp { Value: Value; Unit?: Value; constructor(properties: Timestamp); } export declare class TimestreamAction { TableName: Value; DatabaseName: Value; Dimensions: List; Timestamp?: TimestreamTimestamp; RoleArn: Value; constructor(properties: TimestreamAction); } export declare class TimestreamDimension { Value: Value; Name: Value; constructor(properties: TimestreamDimension); } export declare class TimestreamTimestamp { Value: Value; Unit: Value; constructor(properties: TimestreamTimestamp); } export declare class TopicRulePayload { RuleDisabled?: Value; ErrorAction?: Action; Description?: Value; AwsIotSqlVersion?: Value; Actions: List; Sql: Value; constructor(properties: TopicRulePayload); } export declare class UserProperty { Value: Value; Key: Value; constructor(properties: UserProperty); } export interface TopicRuleProperties { TopicRulePayload: TopicRulePayload; RuleName?: Value; Tags?: List; } export default class TopicRule extends ResourceBase { static Action: typeof Action; static AssetPropertyTimestamp: typeof AssetPropertyTimestamp; static AssetPropertyValue: typeof AssetPropertyValue; static AssetPropertyVariant: typeof AssetPropertyVariant; static CloudwatchAlarmAction: typeof CloudwatchAlarmAction; static CloudwatchLogsAction: typeof CloudwatchLogsAction; static CloudwatchMetricAction: typeof CloudwatchMetricAction; static DynamoDBAction: typeof DynamoDBAction; static DynamoDBv2Action: typeof DynamoDBv2Action; static ElasticsearchAction: typeof ElasticsearchAction; static FirehoseAction: typeof FirehoseAction; static HttpAction: typeof HttpAction; static HttpActionHeader: typeof HttpActionHeader; static HttpAuthorization: typeof HttpAuthorization; static IotAnalyticsAction: typeof IotAnalyticsAction; static IotEventsAction: typeof IotEventsAction; static IotSiteWiseAction: typeof IotSiteWiseAction; static KafkaAction: typeof KafkaAction; static KafkaActionHeader: typeof KafkaActionHeader; static KinesisAction: typeof KinesisAction; static LambdaAction: typeof LambdaAction; static LocationAction: typeof LocationAction; static OpenSearchAction: typeof OpenSearchAction; static PutAssetPropertyValueEntry: typeof PutAssetPropertyValueEntry; static PutItemInput: typeof PutItemInput; static RepublishAction: typeof RepublishAction; static RepublishActionHeaders: typeof RepublishActionHeaders; static S3Action: typeof S3Action; static SigV4Authorization: typeof SigV4Authorization; static SnsAction: typeof SnsAction; static SqsAction: typeof SqsAction; static StepFunctionsAction: typeof StepFunctionsAction; static Timestamp: typeof Timestamp; static TimestreamAction: typeof TimestreamAction; static TimestreamDimension: typeof TimestreamDimension; static TimestreamTimestamp: typeof TimestreamTimestamp; static TopicRulePayload: typeof TopicRulePayload; static UserProperty: typeof UserProperty; constructor(properties: TopicRuleProperties); }