/* eslint-disable */ /** * This file was automatically generated by json-schema-to-typescript. * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file, * and run json-schema-to-typescript to regenerate this file. */ export type CampaignStatus = "CREATING" | "WAITING_FOR_APPROVAL" | "RUNNING" | "SUSPENDED"; export type UpdateCampaignAction = "APPROVE" | "SUSPEND" | "RESUME" | "UPDATE"; export type Compression = "OFF" | "SNAPPY"; export type SpoolingMode = "OFF" | "TO_DISK"; export type DiagnosticsMode = "OFF" | "SEND_ACTIVE_DTCS"; export type CollectionScheme = TimeBasedCollectionScheme | ConditionBasedCollectionScheme; export type TriggerMode = "ALWAYS" | "RISING_EDGE"; /** * Definition of AWS::IoTFleetWise::Campaign Resource Type */ export interface AwsIotfleetwiseCampaign { Status?: CampaignStatus; Action: UpdateCampaignAction; CreationTime?: string; Compression?: Compression; Description?: string; Priority?: number; /** * @minItems 0 * @maxItems 1000 */ SignalsToCollect?: SignalInformation[]; StartTime?: string; Name: string; ExpiryTime?: string; LastModificationTime?: string; SpoolingMode?: SpoolingMode; SignalCatalogArn: string; PostTriggerCollectionDuration?: number; /** * @minItems 0 * @maxItems 5 */ DataExtraDimensions?: | [] | [string] | [string, string] | [string, string, string] | [string, string, string, string] | [string, string, string, string, string]; DiagnosticsMode?: DiagnosticsMode; TargetArn: string; Arn?: string; CollectionScheme: CollectionScheme; /** * @minItems 0 * @maxItems 50 */ Tags?: Tag[]; } export interface SignalInformation { MaxSampleCount?: number; Name: string; MinimumSamplingIntervalMs?: number; } export interface TimeBasedCollectionScheme { TimeBasedCollectionScheme: TimeBasedCollectionScheme1; } export interface TimeBasedCollectionScheme1 { PeriodMs: number; } export interface ConditionBasedCollectionScheme { ConditionBasedCollectionScheme: ConditionBasedCollectionScheme1; } export interface ConditionBasedCollectionScheme1 { MinimumTriggerIntervalMs?: number; Expression: string; TriggerMode?: TriggerMode; ConditionLanguageVersion?: number; } export interface Tag { Key: string; Value: string; }