import { AlertTargetType, ApplicationProtocol, AuditFrequency, AuditNotificationType, AuthenticationType, AuthorizerStatus, AutoRegistrationStatus, BehaviorCriteriaType, CACertificateStatus, CertificateMode, CertificateProviderOperation, CertificateStatus, CustomMetricType, DayOfWeek, DimensionType, DomainConfigurationStatus, EncryptionType, EventType, FleetMetricUnit, LogLevel, LogTargetType, PackageVersionAction, ReportType, Status, ThingPrincipalType, TopicRuleDestinationStatus, VerificationState, ViolationEventType, } from "./enums"; import { AbortConfig, AggregationType, AlertTarget, AttributePayload, AuditCheckConfiguration, AuditMitigationActionsTaskTarget, AuditNotificationTarget, AuthInfo, AuthorizerConfig, AuthResult, Behavior, BillingGroupProperties, ClientCertificateConfig, JobExecutionsRetryConfig, JobExecutionsRolloutConfig, MetricsExportConfig, MetricToRetain, MetricValue, MitigationActionParams, PackageVersionArtifact, PresignedUrlConfig, ProvisioningHook, ResourceIdentifier, ServerCertificateConfig, StreamFile, Tag, ThingGroupProperties, ThingTypeProperties, TimeoutConfig, TlsConfig, TopicRulePayload, ViolationEventAdditionalInfo, } from "./models_0"; import { Configuration, DetectMitigationActionsTaskTarget, GroupNameAndArn, LogEventConfiguration, RegistrationConfig, SecurityProfileTarget, ThingGroupIndexingConfiguration, ThingIndexingConfiguration, ThingTypeMetadata, VersionUpdateByJobsConfig, ViolationEventOccurrenceRange, } from "./models_1"; export interface ListTargetsForSecurityProfileRequest { securityProfileName: string | undefined; nextToken?: string | undefined; maxResults?: number | undefined; } export interface ListTargetsForSecurityProfileResponse { securityProfileTargets?: SecurityProfileTarget[] | undefined; nextToken?: string | undefined; } export interface ListThingGroupsRequest { nextToken?: string | undefined; maxResults?: number | undefined; parentGroup?: string | undefined; namePrefixFilter?: string | undefined; recursive?: boolean | undefined; } export interface ListThingGroupsResponse { thingGroups?: GroupNameAndArn[] | undefined; nextToken?: string | undefined; } export interface ListThingGroupsForThingRequest { thingName: string | undefined; nextToken?: string | undefined; maxResults?: number | undefined; } export interface ListThingGroupsForThingResponse { thingGroups?: GroupNameAndArn[] | undefined; nextToken?: string | undefined; } export interface ListThingPrincipalsRequest { nextToken?: string | undefined; maxResults?: number | undefined; thingName: string | undefined; } export interface ListThingPrincipalsResponse { principals?: string[] | undefined; nextToken?: string | undefined; } export interface ListThingPrincipalsV2Request { nextToken?: string | undefined; maxResults?: number | undefined; thingName: string | undefined; thingPrincipalType?: ThingPrincipalType | undefined; } export interface ThingPrincipalObject { principal: string | undefined; thingPrincipalType?: ThingPrincipalType | undefined; } export interface ListThingPrincipalsV2Response { thingPrincipalObjects?: ThingPrincipalObject[] | undefined; nextToken?: string | undefined; } export interface ListThingRegistrationTaskReportsRequest { taskId: string | undefined; reportType: ReportType | undefined; nextToken?: string | undefined; maxResults?: number | undefined; } export interface ListThingRegistrationTaskReportsResponse { resourceLinks?: string[] | undefined; reportType?: ReportType | undefined; nextToken?: string | undefined; } export interface ListThingRegistrationTasksRequest { nextToken?: string | undefined; maxResults?: number | undefined; status?: Status | undefined; } export interface ListThingRegistrationTasksResponse { taskIds?: string[] | undefined; nextToken?: string | undefined; } export interface ListThingsRequest { nextToken?: string | undefined; maxResults?: number | undefined; attributeName?: string | undefined; attributeValue?: string | undefined; thingTypeName?: string | undefined; usePrefixAttributeValue?: boolean | undefined; } export interface ThingAttribute { thingName?: string | undefined; thingTypeName?: string | undefined; thingArn?: string | undefined; attributes?: Record | undefined; version?: number | undefined; } export interface ListThingsResponse { things?: ThingAttribute[] | undefined; nextToken?: string | undefined; } export interface ListThingsInBillingGroupRequest { billingGroupName: string | undefined; nextToken?: string | undefined; maxResults?: number | undefined; } export interface ListThingsInBillingGroupResponse { things?: string[] | undefined; nextToken?: string | undefined; } export interface ListThingsInThingGroupRequest { thingGroupName: string | undefined; recursive?: boolean | undefined; nextToken?: string | undefined; maxResults?: number | undefined; } export interface ListThingsInThingGroupResponse { things?: string[] | undefined; nextToken?: string | undefined; } export interface ListThingTypesRequest { nextToken?: string | undefined; maxResults?: number | undefined; thingTypeName?: string | undefined; } export interface ThingTypeDefinition { thingTypeName?: string | undefined; thingTypeArn?: string | undefined; thingTypeProperties?: ThingTypeProperties | undefined; thingTypeMetadata?: ThingTypeMetadata | undefined; } export interface ListThingTypesResponse { thingTypes?: ThingTypeDefinition[] | undefined; nextToken?: string | undefined; } export interface ListTopicRuleDestinationsRequest { maxResults?: number | undefined; nextToken?: string | undefined; } export interface HttpUrlDestinationSummary { confirmationUrl?: string | undefined; } export interface VpcDestinationSummary { subnetIds?: string[] | undefined; securityGroups?: string[] | undefined; vpcId?: string | undefined; roleArn?: string | undefined; } export interface TopicRuleDestinationSummary { arn?: string | undefined; status?: TopicRuleDestinationStatus | undefined; createdAt?: Date | undefined; lastUpdatedAt?: Date | undefined; statusReason?: string | undefined; httpUrlSummary?: HttpUrlDestinationSummary | undefined; vpcDestinationSummary?: VpcDestinationSummary | undefined; } export interface ListTopicRuleDestinationsResponse { destinationSummaries?: TopicRuleDestinationSummary[] | undefined; nextToken?: string | undefined; } export interface ListTopicRulesRequest { topic?: string | undefined; maxResults?: number | undefined; nextToken?: string | undefined; ruleDisabled?: boolean | undefined; } export interface TopicRuleListItem { ruleArn?: string | undefined; ruleName?: string | undefined; topicPattern?: string | undefined; createdAt?: Date | undefined; ruleDisabled?: boolean | undefined; } export interface ListTopicRulesResponse { rules?: TopicRuleListItem[] | undefined; nextToken?: string | undefined; } export interface ListV2LoggingLevelsRequest { targetType?: LogTargetType | undefined; nextToken?: string | undefined; maxResults?: number | undefined; } export interface LogTarget { targetType: LogTargetType | undefined; targetName?: string | undefined; } export interface LogTargetConfiguration { logTarget?: LogTarget | undefined; logLevel?: LogLevel | undefined; } export interface ListV2LoggingLevelsResponse { logTargetConfigurations?: LogTargetConfiguration[] | undefined; nextToken?: string | undefined; } export interface ListViolationEventsRequest { startTime: Date | undefined; endTime: Date | undefined; thingName?: string | undefined; securityProfileName?: string | undefined; behaviorCriteriaType?: BehaviorCriteriaType | undefined; listSuppressedAlerts?: boolean | undefined; verificationState?: VerificationState | undefined; nextToken?: string | undefined; maxResults?: number | undefined; } export interface ViolationEvent { violationId?: string | undefined; thingName?: string | undefined; securityProfileName?: string | undefined; behavior?: Behavior | undefined; metricValue?: MetricValue | undefined; violationEventAdditionalInfo?: ViolationEventAdditionalInfo | undefined; violationEventType?: ViolationEventType | undefined; verificationState?: VerificationState | undefined; verificationStateDescription?: string | undefined; violationEventTime?: Date | undefined; } export interface ListViolationEventsResponse { violationEvents?: ViolationEvent[] | undefined; nextToken?: string | undefined; } export interface PutVerificationStateOnViolationRequest { violationId: string | undefined; verificationState: VerificationState | undefined; verificationStateDescription?: string | undefined; } export interface PutVerificationStateOnViolationResponse {} export interface RegisterCACertificateRequest { caCertificate: string | undefined; verificationCertificate?: string | undefined; setAsActive?: boolean | undefined; allowAutoRegistration?: boolean | undefined; registrationConfig?: RegistrationConfig | undefined; tags?: Tag[] | undefined; certificateMode?: CertificateMode | undefined; } export interface RegisterCACertificateResponse { certificateArn?: string | undefined; certificateId?: string | undefined; } export interface RegisterCertificateRequest { certificatePem: string | undefined; caCertificatePem?: string | undefined; setAsActive?: boolean | undefined; status?: CertificateStatus | undefined; } export interface RegisterCertificateResponse { certificateArn?: string | undefined; certificateId?: string | undefined; } export interface RegisterCertificateWithoutCARequest { certificatePem: string | undefined; status?: CertificateStatus | undefined; } export interface RegisterCertificateWithoutCAResponse { certificateArn?: string | undefined; certificateId?: string | undefined; } export interface RegisterThingRequest { templateBody: string | undefined; parameters?: Record | undefined; } export interface RegisterThingResponse { certificatePem?: string | undefined; resourceArns?: Record | undefined; } export interface RejectCertificateTransferRequest { certificateId: string | undefined; rejectReason?: string | undefined; } export interface RemoveThingFromBillingGroupRequest { billingGroupName?: string | undefined; billingGroupArn?: string | undefined; thingName?: string | undefined; thingArn?: string | undefined; } export interface RemoveThingFromBillingGroupResponse {} export interface RemoveThingFromThingGroupRequest { thingGroupName?: string | undefined; thingGroupArn?: string | undefined; thingName?: string | undefined; thingArn?: string | undefined; } export interface RemoveThingFromThingGroupResponse {} export interface ReplaceTopicRuleRequest { ruleName: string | undefined; topicRulePayload: TopicRulePayload | undefined; } export interface SearchIndexRequest { indexName?: string | undefined; queryString: string | undefined; nextToken?: string | undefined; maxResults?: number | undefined; queryVersion?: string | undefined; } export interface ThingGroupDocument { thingGroupName?: string | undefined; thingGroupId?: string | undefined; thingGroupDescription?: string | undefined; attributes?: Record | undefined; parentGroupNames?: string[] | undefined; } export interface ThingConnectivity { connected?: boolean | undefined; timestamp?: number | undefined; disconnectReason?: string | undefined; } export interface ThingDocument { thingName?: string | undefined; thingId?: string | undefined; thingTypeName?: string | undefined; thingGroupNames?: string[] | undefined; attributes?: Record | undefined; shadow?: string | undefined; deviceDefender?: string | undefined; connectivity?: ThingConnectivity | undefined; } export interface SearchIndexResponse { nextToken?: string | undefined; things?: ThingDocument[] | undefined; thingGroups?: ThingGroupDocument[] | undefined; } export interface SetDefaultAuthorizerRequest { authorizerName: string | undefined; } export interface SetDefaultAuthorizerResponse { authorizerName?: string | undefined; authorizerArn?: string | undefined; } export interface SetDefaultPolicyVersionRequest { policyName: string | undefined; policyVersionId: string | undefined; } export interface LoggingOptionsPayload { roleArn: string | undefined; logLevel?: LogLevel | undefined; } export interface SetLoggingOptionsRequest { loggingOptionsPayload: LoggingOptionsPayload | undefined; } export interface SetV2LoggingLevelRequest { logTarget: LogTarget | undefined; logLevel: LogLevel | undefined; } export interface SetV2LoggingOptionsRequest { roleArn?: string | undefined; defaultLogLevel?: LogLevel | undefined; disableAllLogs?: boolean | undefined; eventConfigurations?: LogEventConfiguration[] | undefined; } export interface StartAuditMitigationActionsTaskRequest { taskId: string | undefined; target: AuditMitigationActionsTaskTarget | undefined; auditCheckToActionsMapping: Record | undefined; clientRequestToken?: string | undefined; } export interface StartAuditMitigationActionsTaskResponse { taskId?: string | undefined; } export interface StartDetectMitigationActionsTaskRequest { taskId: string | undefined; target: DetectMitigationActionsTaskTarget | undefined; actions: string[] | undefined; violationEventOccurrenceRange?: ViolationEventOccurrenceRange | undefined; includeOnlyActiveViolations?: boolean | undefined; includeSuppressedAlerts?: boolean | undefined; clientRequestToken?: string | undefined; } export interface StartDetectMitigationActionsTaskResponse { taskId?: string | undefined; } export interface StartOnDemandAuditTaskRequest { targetCheckNames: string[] | undefined; } export interface StartOnDemandAuditTaskResponse { taskId?: string | undefined; } export interface StartThingRegistrationTaskRequest { templateBody: string | undefined; inputFileBucket: string | undefined; inputFileKey: string | undefined; roleArn: string | undefined; } export interface StartThingRegistrationTaskResponse { taskId?: string | undefined; } export interface StopThingRegistrationTaskRequest { taskId: string | undefined; } export interface StopThingRegistrationTaskResponse {} export interface TagResourceRequest { resourceArn: string | undefined; tags: Tag[] | undefined; } export interface TagResourceResponse {} export interface TestAuthorizationRequest { principal?: string | undefined; cognitoIdentityPoolId?: string | undefined; authInfos: AuthInfo[] | undefined; clientId?: string | undefined; policyNamesToAdd?: string[] | undefined; policyNamesToSkip?: string[] | undefined; } export interface TestAuthorizationResponse { authResults?: AuthResult[] | undefined; } export interface HttpContext { headers?: Record | undefined; queryString?: string | undefined; } export interface MqttContext { username?: string | undefined; password?: Uint8Array | undefined; clientId?: string | undefined; } export interface TlsContext { serverName?: string | undefined; } export interface TestInvokeAuthorizerRequest { authorizerName: string | undefined; token?: string | undefined; tokenSignature?: string | undefined; httpContext?: HttpContext | undefined; mqttContext?: MqttContext | undefined; tlsContext?: TlsContext | undefined; } export interface TestInvokeAuthorizerResponse { isAuthenticated?: boolean | undefined; principalId?: string | undefined; policyDocuments?: string[] | undefined; refreshAfterInSeconds?: number | undefined; disconnectAfterInSeconds?: number | undefined; } export interface TransferCertificateRequest { certificateId: string | undefined; targetAwsAccount: string | undefined; transferMessage?: string | undefined; } export interface TransferCertificateResponse { transferredCertificateArn?: string | undefined; } export interface UntagResourceRequest { resourceArn: string | undefined; tagKeys: string[] | undefined; } export interface UntagResourceResponse {} export interface UpdateAccountAuditConfigurationRequest { roleArn?: string | undefined; auditNotificationTargetConfigurations?: | Partial> | undefined; auditCheckConfigurations?: | Record | undefined; } export interface UpdateAccountAuditConfigurationResponse {} export interface UpdateAuditSuppressionRequest { checkName: string | undefined; resourceIdentifier: ResourceIdentifier | undefined; expirationDate?: Date | undefined; suppressIndefinitely?: boolean | undefined; description?: string | undefined; } export interface UpdateAuditSuppressionResponse {} export interface UpdateAuthorizerRequest { authorizerName: string | undefined; authorizerFunctionArn?: string | undefined; tokenKeyName?: string | undefined; tokenSigningPublicKeys?: Record | undefined; status?: AuthorizerStatus | undefined; enableCachingForHttp?: boolean | undefined; } export interface UpdateAuthorizerResponse { authorizerName?: string | undefined; authorizerArn?: string | undefined; } export interface UpdateBillingGroupRequest { billingGroupName: string | undefined; billingGroupProperties: BillingGroupProperties | undefined; expectedVersion?: number | undefined; } export interface UpdateBillingGroupResponse { version?: number | undefined; } export interface UpdateCACertificateRequest { certificateId: string | undefined; newStatus?: CACertificateStatus | undefined; newAutoRegistrationStatus?: AutoRegistrationStatus | undefined; registrationConfig?: RegistrationConfig | undefined; removeAutoRegistration?: boolean | undefined; } export interface UpdateCertificateRequest { certificateId: string | undefined; newStatus: CertificateStatus | undefined; } export interface UpdateCertificateProviderRequest { certificateProviderName: string | undefined; lambdaFunctionArn?: string | undefined; accountDefaultForOperations?: CertificateProviderOperation[] | undefined; } export interface UpdateCertificateProviderResponse { certificateProviderName?: string | undefined; certificateProviderArn?: string | undefined; } export interface UpdateCommandRequest { commandId: string | undefined; displayName?: string | undefined; description?: string | undefined; deprecated?: boolean | undefined; } export interface UpdateCommandResponse { commandId?: string | undefined; displayName?: string | undefined; description?: string | undefined; deprecated?: boolean | undefined; lastUpdatedAt?: Date | undefined; } export interface UpdateCustomMetricRequest { metricName: string | undefined; displayName: string | undefined; } export interface UpdateCustomMetricResponse { metricName?: string | undefined; metricArn?: string | undefined; metricType?: CustomMetricType | undefined; displayName?: string | undefined; creationDate?: Date | undefined; lastModifiedDate?: Date | undefined; } export interface UpdateDimensionRequest { name: string | undefined; stringValues: string[] | undefined; } export interface UpdateDimensionResponse { name?: string | undefined; arn?: string | undefined; type?: DimensionType | undefined; stringValues?: string[] | undefined; creationDate?: Date | undefined; lastModifiedDate?: Date | undefined; } export interface UpdateDomainConfigurationRequest { domainConfigurationName: string | undefined; authorizerConfig?: AuthorizerConfig | undefined; domainConfigurationStatus?: DomainConfigurationStatus | undefined; removeAuthorizerConfig?: boolean | undefined; tlsConfig?: TlsConfig | undefined; serverCertificateConfig?: ServerCertificateConfig | undefined; authenticationType?: AuthenticationType | undefined; applicationProtocol?: ApplicationProtocol | undefined; clientCertificateConfig?: ClientCertificateConfig | undefined; } export interface UpdateDomainConfigurationResponse { domainConfigurationName?: string | undefined; domainConfigurationArn?: string | undefined; } export interface UpdateDynamicThingGroupRequest { thingGroupName: string | undefined; thingGroupProperties: ThingGroupProperties | undefined; expectedVersion?: number | undefined; indexName?: string | undefined; queryString?: string | undefined; queryVersion?: string | undefined; } export interface UpdateDynamicThingGroupResponse { version?: number | undefined; } export interface UpdateEncryptionConfigurationRequest { encryptionType: EncryptionType | undefined; kmsKeyArn?: string | undefined; kmsAccessRoleArn?: string | undefined; } export interface UpdateEncryptionConfigurationResponse {} export interface UpdateEventConfigurationsRequest { eventConfigurations?: Partial> | undefined; } export interface UpdateEventConfigurationsResponse {} export interface UpdateFleetMetricRequest { metricName: string | undefined; queryString?: string | undefined; aggregationType?: AggregationType | undefined; period?: number | undefined; aggregationField?: string | undefined; description?: string | undefined; queryVersion?: string | undefined; indexName: string | undefined; unit?: FleetMetricUnit | undefined; expectedVersion?: number | undefined; } export interface UpdateIndexingConfigurationRequest { thingIndexingConfiguration?: ThingIndexingConfiguration | undefined; thingGroupIndexingConfiguration?: ThingGroupIndexingConfiguration | undefined; } export interface UpdateIndexingConfigurationResponse {} export interface UpdateJobRequest { jobId: string | undefined; description?: string | undefined; presignedUrlConfig?: PresignedUrlConfig | undefined; jobExecutionsRolloutConfig?: JobExecutionsRolloutConfig | undefined; abortConfig?: AbortConfig | undefined; timeoutConfig?: TimeoutConfig | undefined; namespaceId?: string | undefined; jobExecutionsRetryConfig?: JobExecutionsRetryConfig | undefined; } export interface UpdateMitigationActionRequest { actionName: string | undefined; roleArn?: string | undefined; actionParams?: MitigationActionParams | undefined; } export interface UpdateMitigationActionResponse { actionArn?: string | undefined; actionId?: string | undefined; } export interface UpdatePackageRequest { packageName: string | undefined; description?: string | undefined; defaultVersionName?: string | undefined; unsetDefaultVersion?: boolean | undefined; clientToken?: string | undefined; } export interface UpdatePackageResponse {} export interface UpdatePackageConfigurationRequest { versionUpdateByJobsConfig?: VersionUpdateByJobsConfig | undefined; clientToken?: string | undefined; } export interface UpdatePackageConfigurationResponse {} export interface UpdatePackageVersionRequest { packageName: string | undefined; versionName: string | undefined; description?: string | undefined; attributes?: Record | undefined; artifact?: PackageVersionArtifact | undefined; action?: PackageVersionAction | undefined; recipe?: string | undefined; clientToken?: string | undefined; } export interface UpdatePackageVersionResponse {} export interface UpdateProvisioningTemplateRequest { templateName: string | undefined; description?: string | undefined; enabled?: boolean | undefined; defaultVersionId?: number | undefined; provisioningRoleArn?: string | undefined; preProvisioningHook?: ProvisioningHook | undefined; removePreProvisioningHook?: boolean | undefined; } export interface UpdateProvisioningTemplateResponse {} export interface UpdateRoleAliasRequest { roleAlias: string | undefined; roleArn?: string | undefined; credentialDurationSeconds?: number | undefined; } export interface UpdateRoleAliasResponse { roleAlias?: string | undefined; roleAliasArn?: string | undefined; } export interface UpdateScheduledAuditRequest { frequency?: AuditFrequency | undefined; dayOfMonth?: string | undefined; dayOfWeek?: DayOfWeek | undefined; targetCheckNames?: string[] | undefined; scheduledAuditName: string | undefined; } export interface UpdateScheduledAuditResponse { scheduledAuditArn?: string | undefined; } export interface UpdateSecurityProfileRequest { securityProfileName: string | undefined; securityProfileDescription?: string | undefined; behaviors?: Behavior[] | undefined; alertTargets?: Partial> | undefined; additionalMetricsToRetain?: string[] | undefined; additionalMetricsToRetainV2?: MetricToRetain[] | undefined; deleteBehaviors?: boolean | undefined; deleteAlertTargets?: boolean | undefined; deleteAdditionalMetricsToRetain?: boolean | undefined; expectedVersion?: number | undefined; metricsExportConfig?: MetricsExportConfig | undefined; deleteMetricsExportConfig?: boolean | undefined; } export interface UpdateSecurityProfileResponse { securityProfileName?: string | undefined; securityProfileArn?: string | undefined; securityProfileDescription?: string | undefined; behaviors?: Behavior[] | undefined; alertTargets?: Partial> | undefined; additionalMetricsToRetain?: string[] | undefined; additionalMetricsToRetainV2?: MetricToRetain[] | undefined; version?: number | undefined; creationDate?: Date | undefined; lastModifiedDate?: Date | undefined; metricsExportConfig?: MetricsExportConfig | undefined; } export interface UpdateStreamRequest { streamId: string | undefined; description?: string | undefined; files?: StreamFile[] | undefined; roleArn?: string | undefined; } export interface UpdateStreamResponse { streamId?: string | undefined; streamArn?: string | undefined; description?: string | undefined; streamVersion?: number | undefined; } export interface UpdateThingRequest { thingName: string | undefined; thingTypeName?: string | undefined; attributePayload?: AttributePayload | undefined; expectedVersion?: number | undefined; removeThingType?: boolean | undefined; } export interface UpdateThingResponse {} export interface UpdateThingGroupRequest { thingGroupName: string | undefined; thingGroupProperties: ThingGroupProperties | undefined; expectedVersion?: number | undefined; } export interface UpdateThingGroupResponse { version?: number | undefined; } export interface UpdateThingGroupsForThingRequest { thingName?: string | undefined; thingGroupsToAdd?: string[] | undefined; thingGroupsToRemove?: string[] | undefined; overrideDynamicGroups?: boolean | undefined; } export interface UpdateThingGroupsForThingResponse {} export interface UpdateThingTypeRequest { thingTypeName: string | undefined; thingTypeProperties?: ThingTypeProperties | undefined; } export interface UpdateThingTypeResponse {} export interface UpdateTopicRuleDestinationRequest { arn: string | undefined; status: TopicRuleDestinationStatus | undefined; } export interface UpdateTopicRuleDestinationResponse {} export interface ValidateSecurityProfileBehaviorsRequest { behaviors: Behavior[] | undefined; } export interface ValidationError { errorMessage?: string | undefined; } export interface ValidateSecurityProfileBehaviorsResponse { valid?: boolean | undefined; validationErrors?: ValidationError[] | undefined; }