UNPKG

@aws-sdk/client-iot

Version:

AWS SDK for JavaScript Iot Client for Node.js, Browser and React Native

1,789 lines 165 kB
import { ExceptionOptionType as __ExceptionOptionType } from "@smithy/smithy-client"; import { IoTServiceException as __BaseException } from "./IoTServiceException"; import { AbortConfig, AggregationType, AlertTarget, AlertTargetType, ApplicationProtocol, AttributePayload, AuditCheckConfiguration, AuditFrequency, AuditMitigationActionsTaskTarget, AuditNotificationTarget, AuditNotificationType, AuthenticationType, AuthInfo, AuthorizerConfig, AuthorizerStatus, AuthResult, AutoRegistrationStatus, Behavior, BillingGroupProperties, CertificateProviderOperation, ClientCertificateConfig, CustomMetricType, DayOfWeek, DimensionType, DimensionValueOperator, FleetMetricUnit, JobExecutionsRetryConfig, JobExecutionsRolloutConfig, LogLevel, MetricsExportConfig, MetricToRetain, MetricValue, MitigationActionParams, OTAUpdateStatus, PackageVersionArtifact, PackageVersionStatus, Policy, PresignedUrlConfig, ProvisioningHook, RelatedResource, ResourceIdentifier, ServerCertificateConfig, ServiceType, StreamFile, Tag, TargetSelection, TemplateType, ThingGroupProperties, ThingPrincipalType, ThingTypeProperties, TimeoutConfig, TlsConfig, TopicRuleDestinationStatus, TopicRulePayload, VerificationState, ViolationEventAdditionalInfo } from "./models_0"; import { BehaviorCriteriaType, CACertificateStatus, CertificateMode, CertificateStatus, Configuration, DetectMitigationActionsTaskSummary, DetectMitigationActionsTaskTarget, DomainConfigurationStatus, EventType, GroupNameAndArn, JobExecutionStatus, JobStatus, LogTargetType, MitigationActionType, RegistrationConfig, Status, ThingGroupIndexingConfiguration, ThingIndexingConfiguration, ThingTypeMetadata, VersionUpdateByJobsConfig, ViolationEventOccurrenceRange } from "./models_1"; /** * @public */ export interface ListCustomMetricsResponse { /** * <p> * The name of the custom metric. * </p> * @public */ metricNames?: string[] | undefined; /** * <p> * A token that can be used to retrieve the next set of results, * or <code>null</code> if there are no additional results. * </p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListDetectMitigationActionsExecutionsRequest { /** * <p> * The unique identifier of the task. * </p> * @public */ taskId?: string | undefined; /** * <p> * The unique identifier of the violation. * </p> * @public */ violationId?: string | undefined; /** * <p> * The name of the thing whose mitigation actions are listed. * </p> * @public */ thingName?: string | undefined; /** * <p> * A filter to limit results to those found after the specified time. You must * specify either the startTime and endTime or the taskId, but not both. * </p> * @public */ startTime?: Date | undefined; /** * <p> * The end of the time period for which ML Detect mitigation actions executions are returned. * </p> * @public */ endTime?: Date | undefined; /** * <p> * The maximum number of results to return at one time. The default is 25. * </p> * @public */ maxResults?: number | undefined; /** * <p> * The token for the next set of results. * </p> * @public */ nextToken?: string | undefined; } /** * @public * @enum */ export declare const DetectMitigationActionExecutionStatus: { readonly FAILED: "FAILED"; readonly IN_PROGRESS: "IN_PROGRESS"; readonly SKIPPED: "SKIPPED"; readonly SUCCESSFUL: "SUCCESSFUL"; }; /** * @public */ export type DetectMitigationActionExecutionStatus = (typeof DetectMitigationActionExecutionStatus)[keyof typeof DetectMitigationActionExecutionStatus]; /** * <p> * Describes which mitigation actions should be executed. * </p> * @public */ export interface DetectMitigationActionExecution { /** * <p> * The unique identifier of the task. * </p> * @public */ taskId?: string | undefined; /** * <p> * The unique identifier of the violation. * </p> * @public */ violationId?: string | undefined; /** * <p> * The friendly name that uniquely identifies the mitigation action. * </p> * @public */ actionName?: string | undefined; /** * <p> * The name of the thing. * </p> * @public */ thingName?: string | undefined; /** * <p> * The date a mitigation action was started. * </p> * @public */ executionStartDate?: Date | undefined; /** * <p> * The date a mitigation action ended. * </p> * @public */ executionEndDate?: Date | undefined; /** * <p> * The status of a mitigation action. * </p> * @public */ status?: DetectMitigationActionExecutionStatus | undefined; /** * <p> * The error code of a mitigation action. * </p> * @public */ errorCode?: string | undefined; /** * <p> * The message of a mitigation action. * </p> * @public */ message?: string | undefined; } /** * @public */ export interface ListDetectMitigationActionsExecutionsResponse { /** * <p> * List of actions executions. * </p> * @public */ actionsExecutions?: DetectMitigationActionExecution[] | undefined; /** * <p> * A token that can be used to retrieve the next set of results, or <code>null</code> if there are no additional results. * </p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListDetectMitigationActionsTasksRequest { /** * <p>The maximum number of results to return at one time. The default is 25.</p> * @public */ maxResults?: number | undefined; /** * <p> * The token for the next set of results. * </p> * @public */ nextToken?: string | undefined; /** * <p> * A filter to limit results to those found after the specified time. You must * specify either the startTime and endTime or the taskId, but not both. * </p> * @public */ startTime: Date | undefined; /** * <p> * The end of the time period for which ML Detect mitigation actions tasks are returned. * </p> * @public */ endTime: Date | undefined; } /** * @public */ export interface ListDetectMitigationActionsTasksResponse { /** * <p> * The collection of ML Detect mitigation tasks that matched the filter criteria. * </p> * @public */ tasks?: DetectMitigationActionsTaskSummary[] | undefined; /** * <p> * A token that can be used to retrieve the next set of results, or <code>null</code> if there are no additional results. * </p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListDimensionsRequest { /** * <p>The token for the next set of results.</p> * @public */ nextToken?: string | undefined; /** * <p>The maximum number of results to retrieve at one time.</p> * @public */ maxResults?: number | undefined; } /** * @public */ export interface ListDimensionsResponse { /** * <p>A list of the names of the defined dimensions. Use <code>DescribeDimension</code> to get details for a dimension.</p> * @public */ dimensionNames?: string[] | undefined; /** * <p>A token that can be used to retrieve the next set of results, or <code>null</code> if there are no additional results.</p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListDomainConfigurationsRequest { /** * <p>The marker for the next set of results.</p> * @public */ marker?: string | undefined; /** * <p>The result page size.</p> * @public */ pageSize?: number | undefined; /** * <p>The type of service delivered by the endpoint.</p> * @public */ serviceType?: ServiceType | undefined; } /** * <p>The summary of a domain configuration. A domain configuration specifies custom IoT-specific information about a domain. * A domain configuration can be associated with an Amazon Web Services-managed domain * (for example, dbc123defghijk.iot.us-west-2.amazonaws.com), a customer managed domain, or a default endpoint.</p> * <ul> * <li> * <p>Data</p> * </li> * <li> * <p>Jobs</p> * </li> * <li> * <p>CredentialProvider</p> * </li> * </ul> * @public */ export interface DomainConfigurationSummary { /** * <p>The name of the domain configuration. This value must be unique to a region.</p> * @public */ domainConfigurationName?: string | undefined; /** * <p>The ARN of the domain configuration.</p> * @public */ domainConfigurationArn?: string | undefined; /** * <p>The type of service delivered by the endpoint.</p> * @public */ serviceType?: ServiceType | undefined; } /** * @public */ export interface ListDomainConfigurationsResponse { /** * <p>A list of objects that contain summary information about the user's domain configurations.</p> * @public */ domainConfigurations?: DomainConfigurationSummary[] | undefined; /** * <p>The marker for the next set of results.</p> * @public */ nextMarker?: string | undefined; } /** * @public */ export interface ListFleetMetricsRequest { /** * <p>To retrieve the next set of results, the <code>nextToken</code> value from a previous response; * otherwise <code>null</code> to receive the first set of results.</p> * @public */ nextToken?: string | undefined; /** * <p>The maximum number of results to return in this operation.</p> * @public */ maxResults?: number | undefined; } /** * <p>The name and ARN of a fleet metric.</p> * @public */ export interface FleetMetricNameAndArn { /** * <p>The fleet metric name.</p> * @public */ metricName?: string | undefined; /** * <p>The fleet metric ARN.</p> * @public */ metricArn?: string | undefined; } /** * @public */ export interface ListFleetMetricsResponse { /** * <p>The list of fleet metrics objects.</p> * @public */ fleetMetrics?: FleetMetricNameAndArn[] | undefined; /** * <p>The token for the next set of results. Will not be returned if the operation has returned * all results.</p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListIndicesRequest { /** * <p>The token used to get the next set of results, or <code>null</code> if there are no additional * results.</p> * @public */ nextToken?: string | undefined; /** * <p>The maximum number of results to return at one time.</p> * @public */ maxResults?: number | undefined; } /** * @public */ export interface ListIndicesResponse { /** * <p>The index names.</p> * @public */ indexNames?: string[] | undefined; /** * <p>The token used to get the next set of results, or <code>null</code> if there are no additional * results.</p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListJobExecutionsForJobRequest { /** * <p>The unique identifier you assigned to this job when it was created.</p> * @public */ jobId: string | undefined; /** * <p>The status of the job.</p> * @public */ status?: JobExecutionStatus | undefined; /** * <p>The maximum number of results to be returned per request.</p> * @public */ maxResults?: number | undefined; /** * <p>The token to retrieve the next set of results.</p> * @public */ nextToken?: string | undefined; } /** * <p>The job execution summary.</p> * @public */ export interface JobExecutionSummary { /** * <p>The status of the job execution.</p> * @public */ status?: JobExecutionStatus | undefined; /** * <p>The time, in seconds since the epoch, when the job execution was queued.</p> * @public */ queuedAt?: Date | undefined; /** * <p>The time, in seconds since the epoch, when the job execution started.</p> * @public */ startedAt?: Date | undefined; /** * <p>The time, in seconds since the epoch, when the job execution was last * updated.</p> * @public */ lastUpdatedAt?: Date | undefined; /** * <p>A string (consisting of the digits "0" through "9") which identifies this * particular job execution on this particular device. It can be used later in commands * which return or update job execution information.</p> * @public */ executionNumber?: number | undefined; /** * <p>The number that indicates how many retry attempts have been completed for this job on * this device.</p> * @public */ retryAttempt?: number | undefined; } /** * <p>Contains a summary of information about job executions for a specific * job.</p> * @public */ export interface JobExecutionSummaryForJob { /** * <p>The ARN of the thing on which the job execution is running.</p> * @public */ thingArn?: string | undefined; /** * <p>Contains a subset of information about a job execution.</p> * @public */ jobExecutionSummary?: JobExecutionSummary | undefined; } /** * @public */ export interface ListJobExecutionsForJobResponse { /** * <p>A list of job execution summaries.</p> * @public */ executionSummaries?: JobExecutionSummaryForJob[] | undefined; /** * <p>The token for the next set of results, or <b>null</b> if * there are no additional results.</p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListJobExecutionsForThingRequest { /** * <p>The thing name.</p> * @public */ thingName: string | undefined; /** * <p>An optional filter that lets you search for jobs that have the specified * status.</p> * @public */ status?: JobExecutionStatus | undefined; /** * <p>The namespace used to indicate that a job is a customer-managed job.</p> * <p>When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to * MQTT topics that contain the value in the following format.</p> * <p> * <code>$aws/things/<i>THING_NAME</i>/jobs/<i>JOB_ID</i>/notify-namespace-<i>NAMESPACE_ID</i>/</code> * </p> * <note> * <p>The <code>namespaceId</code> feature is only supported by IoT Greengrass at this time. For * more information, see <a href="https://docs.aws.amazon.com/greengrass/v2/developerguide/setting-up.html">Setting up IoT Greengrass core devices.</a> * </p> * </note> * @public */ namespaceId?: string | undefined; /** * <p>The maximum number of results to be returned per request.</p> * @public */ maxResults?: number | undefined; /** * <p>The token to retrieve the next set of results.</p> * @public */ nextToken?: string | undefined; /** * <p>The unique identifier you assigned to this job when it was created.</p> * @public */ jobId?: string | undefined; } /** * <p>The job execution summary for a thing.</p> * @public */ export interface JobExecutionSummaryForThing { /** * <p>The unique identifier you assigned to this job when it was created.</p> * @public */ jobId?: string | undefined; /** * <p>Contains a subset of information about a job execution.</p> * @public */ jobExecutionSummary?: JobExecutionSummary | undefined; } /** * @public */ export interface ListJobExecutionsForThingResponse { /** * <p>A list of job execution summaries.</p> * @public */ executionSummaries?: JobExecutionSummaryForThing[] | undefined; /** * <p>The token for the next set of results, or <b>null</b> if * there are no additional results.</p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListJobsRequest { /** * <p>An optional filter that lets you search for jobs that have the specified * status.</p> * @public */ status?: JobStatus | undefined; /** * <p>Specifies whether the job will continue to run (CONTINUOUS), or will be complete * after all those things specified as targets have completed the job (SNAPSHOT). If * continuous, the job may also be run on a thing when a change is detected in a target. * For example, a job will run on a thing when the thing is added to a target group, even * after the job was completed by all things originally in the group. </p> * <note> * <p>We recommend that you use continuous jobs instead of snapshot jobs for dynamic * thing group targets. By using continuous jobs, devices that join the group receive * the job execution even after the job has been created.</p> * </note> * @public */ targetSelection?: TargetSelection | undefined; /** * <p>The maximum number of results to return per request.</p> * @public */ maxResults?: number | undefined; /** * <p>The token to retrieve the next set of results.</p> * @public */ nextToken?: string | undefined; /** * <p>A filter that limits the returned jobs to those for the specified group.</p> * @public */ thingGroupName?: string | undefined; /** * <p>A filter that limits the returned jobs to those for the specified group.</p> * @public */ thingGroupId?: string | undefined; /** * <p>The namespace used to indicate that a job is a customer-managed job.</p> * <p>When you specify a value for this parameter, Amazon Web Services IoT Core sends jobs notifications to * MQTT topics that contain the value in the following format.</p> * <p> * <code>$aws/things/<i>THING_NAME</i>/jobs/<i>JOB_ID</i>/notify-namespace-<i>NAMESPACE_ID</i>/</code> * </p> * <note> * <p>The <code>namespaceId</code> feature is only supported by IoT Greengrass at this time. For * more information, see <a href="https://docs.aws.amazon.com/greengrass/v2/developerguide/setting-up.html">Setting up IoT Greengrass core devices.</a> * </p> * </note> * @public */ namespaceId?: string | undefined; } /** * <p>The job summary.</p> * @public */ export interface JobSummary { /** * <p>The job ARN.</p> * @public */ jobArn?: string | undefined; /** * <p>The unique identifier you assigned to this job when it was created.</p> * @public */ jobId?: string | undefined; /** * <p>The ID of the thing group.</p> * @public */ thingGroupId?: string | undefined; /** * <p>Specifies whether the job will continue to run (CONTINUOUS), or will be complete * after all those things specified as targets have completed the job (SNAPSHOT). If * continuous, the job may also be run on a thing when a change is detected in a target. * For example, a job will run on a thing when the thing is added to a target group, even * after the job was completed by all things originally in the group.</p> * <note> * <p>We recommend that you use continuous jobs instead of snapshot jobs for dynamic * thing group targets. By using continuous jobs, devices that join the group receive * the job execution even after the job has been created.</p> * </note> * @public */ targetSelection?: TargetSelection | undefined; /** * <p>The job summary status.</p> * @public */ status?: JobStatus | undefined; /** * <p>The time, in seconds since the epoch, when the job was created.</p> * @public */ createdAt?: Date | undefined; /** * <p>The time, in seconds since the epoch, when the job was last updated.</p> * @public */ lastUpdatedAt?: Date | undefined; /** * <p>The time, in seconds since the epoch, when the job completed.</p> * @public */ completedAt?: Date | undefined; /** * <p>Indicates whether a job is concurrent. Will be true when a job is rolling out new job * executions or canceling previously created executions, otherwise false.</p> * @public */ isConcurrent?: boolean | undefined; } /** * @public */ export interface ListJobsResponse { /** * <p>A list of jobs.</p> * @public */ jobs?: JobSummary[] | undefined; /** * <p>The token for the next set of results, or <b>null</b> if * there are no additional results.</p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListJobTemplatesRequest { /** * <p>The maximum number of results to return in the list.</p> * @public */ maxResults?: number | undefined; /** * <p>The token to use to return the next set of results in the list.</p> * @public */ nextToken?: string | undefined; } /** * <p>An object that contains information about the job template.</p> * @public */ export interface JobTemplateSummary { /** * <p>The ARN of the job template.</p> * @public */ jobTemplateArn?: string | undefined; /** * <p>The unique identifier of the job template.</p> * @public */ jobTemplateId?: string | undefined; /** * <p>A description of the job template.</p> * @public */ description?: string | undefined; /** * <p>The time, in seconds since the epoch, when the job template was created.</p> * @public */ createdAt?: Date | undefined; } /** * @public */ export interface ListJobTemplatesResponse { /** * <p>A list of objects that contain information about the job templates.</p> * @public */ jobTemplates?: JobTemplateSummary[] | undefined; /** * <p>The token for the next set of results, or <b>null</b> if * there are no additional results.</p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListManagedJobTemplatesRequest { /** * <p>An optional parameter for template name. If specified, only the versions of the * managed job templates that have the specified template name will be returned.</p> * @public */ templateName?: string | undefined; /** * <p>Maximum number of entries that can be returned.</p> * @public */ maxResults?: number | undefined; /** * <p>The token to retrieve the next set of results.</p> * @public */ nextToken?: string | undefined; } /** * <p>An object that contains information about the managed template.</p> * @public */ export interface ManagedJobTemplateSummary { /** * <p>The Amazon Resource Name (ARN) for a managed template.</p> * @public */ templateArn?: string | undefined; /** * <p>The unique Name for a managed template.</p> * @public */ templateName?: string | undefined; /** * <p>The description for a managed template.</p> * @public */ description?: string | undefined; /** * <p>A list of environments that are supported with the managed job template.</p> * @public */ environments?: string[] | undefined; /** * <p>The version for a managed template.</p> * @public */ templateVersion?: string | undefined; } /** * @public */ export interface ListManagedJobTemplatesResponse { /** * <p>A list of managed job templates that are returned.</p> * @public */ managedJobTemplates?: ManagedJobTemplateSummary[] | undefined; /** * <p>The token to retrieve the next set of results.</p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListMetricValuesRequest { /** * <p>The name of the thing for which security profile metric values are returned.</p> * @public */ thingName: string | undefined; /** * <p>The name of the security profile metric for which values are returned.</p> * @public */ metricName: string | undefined; /** * <p>The dimension name.</p> * @public */ dimensionName?: string | undefined; /** * <p>The dimension value operator.</p> * @public */ dimensionValueOperator?: DimensionValueOperator | undefined; /** * <p>The start of the time period for which metric values are returned.</p> * @public */ startTime: Date | undefined; /** * <p>The end of the time period for which metric values are returned.</p> * @public */ endTime: Date | undefined; /** * <p>The maximum number of results to return at one time.</p> * @public */ maxResults?: number | undefined; /** * <p>The token for the next set of results.</p> * @public */ nextToken?: string | undefined; } /** * <p>A metric.</p> * @public */ export interface MetricDatum { /** * <p>The time the metric value was reported.</p> * @public */ timestamp?: Date | undefined; /** * <p>The value reported for the metric.</p> * @public */ value?: MetricValue | undefined; } /** * @public */ export interface ListMetricValuesResponse { /** * <p>The data the thing reports for the metric during the specified time period.</p> * @public */ metricDatumList?: MetricDatum[] | undefined; /** * <p>A token that can be used to retrieve the next set of results, or <code>null</code> * if there are no additional results.</p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListMitigationActionsRequest { /** * <p>Specify a value to limit the result to mitigation actions with a specific action type.</p> * @public */ actionType?: MitigationActionType | undefined; /** * <p>The maximum number of results to return at one time. The default is 25.</p> * @public */ maxResults?: number | undefined; /** * <p>The token for the next set of results.</p> * @public */ nextToken?: string | undefined; } /** * <p>Information that identifies a mitigation action. This information is returned by ListMitigationActions.</p> * @public */ export interface MitigationActionIdentifier { /** * <p>The friendly name of the mitigation action.</p> * @public */ actionName?: string | undefined; /** * <p>The IAM role ARN used to apply this mitigation action.</p> * @public */ actionArn?: string | undefined; /** * <p>The date when this mitigation action was created.</p> * @public */ creationDate?: Date | undefined; } /** * @public */ export interface ListMitigationActionsResponse { /** * <p>A set of actions that matched the specified filter criteria.</p> * @public */ actionIdentifiers?: MitigationActionIdentifier[] | undefined; /** * <p>The token for the next set of results.</p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListOTAUpdatesRequest { /** * <p>The maximum number of results to return at one time.</p> * @public */ maxResults?: number | undefined; /** * <p>A token used to retrieve the next set of results.</p> * @public */ nextToken?: string | undefined; /** * <p>The OTA update job status.</p> * @public */ otaUpdateStatus?: OTAUpdateStatus | undefined; } /** * <p>An OTA update summary.</p> * @public */ export interface OTAUpdateSummary { /** * <p>The OTA update ID.</p> * @public */ otaUpdateId?: string | undefined; /** * <p>The OTA update ARN.</p> * @public */ otaUpdateArn?: string | undefined; /** * <p>The date when the OTA update was created.</p> * @public */ creationDate?: Date | undefined; } /** * @public */ export interface ListOTAUpdatesResponse { /** * <p>A list of OTA update jobs.</p> * @public */ otaUpdates?: OTAUpdateSummary[] | undefined; /** * <p>A token to use to get the next set of results.</p> * @public */ nextToken?: string | undefined; } /** * <p>The input to the ListOutgoingCertificates operation.</p> * @public */ export interface ListOutgoingCertificatesRequest { /** * <p>The result page size.</p> * @public */ pageSize?: number | undefined; /** * <p>The marker for the next set of results.</p> * @public */ marker?: string | undefined; /** * <p>Specifies the order for results. If True, the results are returned in ascending * order, based on the creation date.</p> * @public */ ascendingOrder?: boolean | undefined; } /** * <p>A certificate that has been transferred but not yet accepted.</p> * @public */ export interface OutgoingCertificate { /** * <p>The certificate ARN.</p> * @public */ certificateArn?: string | undefined; /** * <p>The certificate ID.</p> * @public */ certificateId?: string | undefined; /** * <p>The Amazon Web Services account to which the transfer was made.</p> * @public */ transferredTo?: string | undefined; /** * <p>The date the transfer was initiated.</p> * @public */ transferDate?: Date | undefined; /** * <p>The transfer message.</p> * @public */ transferMessage?: string | undefined; /** * <p>The certificate creation date.</p> * @public */ creationDate?: Date | undefined; } /** * <p>The output from the ListOutgoingCertificates operation.</p> * @public */ export interface ListOutgoingCertificatesResponse { /** * <p>The certificates that are being transferred but not yet accepted.</p> * @public */ outgoingCertificates?: OutgoingCertificate[] | undefined; /** * <p>The marker for the next set of results.</p> * @public */ nextMarker?: string | undefined; } /** * @public */ export interface ListPackagesRequest { /** * <p>The maximum number of results returned at one time.</p> * @public */ maxResults?: number | undefined; /** * <p>The token for the next set of results.</p> * @public */ nextToken?: string | undefined; } /** * <p>A summary of information about a software package.</p> * @public */ export interface PackageSummary { /** * <p>The name for the target software package.</p> * @public */ packageName?: string | undefined; /** * <p>The name of the default package version.</p> * @public */ defaultVersionName?: string | undefined; /** * <p>The date that the package was created.</p> * @public */ creationDate?: Date | undefined; /** * <p>The date that the package was last updated.</p> * @public */ lastModifiedDate?: Date | undefined; } /** * @public */ export interface ListPackagesResponse { /** * <p>The software package summary.</p> * @public */ packageSummaries?: PackageSummary[] | undefined; /** * <p>The token for the next set of results.</p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListPackageVersionsRequest { /** * <p>The name of the target software package.</p> * @public */ packageName: string | undefined; /** * <p>The status of the package version. For more information, see <a href="https://docs.aws.amazon.com/iot/latest/developerguide/preparing-to-use-software-package-catalog.html#package-version-lifecycle">Package version lifecycle</a>.</p> * @public */ status?: PackageVersionStatus | undefined; /** * <p>The maximum number of results to return at one time.</p> * @public */ maxResults?: number | undefined; /** * <p>The token for the next set of results.</p> * @public */ nextToken?: string | undefined; } /** * <p>A summary of information about a package version.</p> * @public */ export interface PackageVersionSummary { /** * <p>The name of the associated software package.</p> * @public */ packageName?: string | undefined; /** * <p>The name of the target package version.</p> * @public */ versionName?: string | undefined; /** * <p>The status of the package version. For more information, see <a href="https://docs.aws.amazon.com/iot/latest/developerguide/preparing-to-use-software-package-catalog.html#package-version-lifecycle">Package version lifecycle</a>.</p> * @public */ status?: PackageVersionStatus | undefined; /** * <p>The date that the package version was created.</p> * @public */ creationDate?: Date | undefined; /** * <p>The date that the package version was last updated.</p> * @public */ lastModifiedDate?: Date | undefined; } /** * @public */ export interface ListPackageVersionsResponse { /** * <p>Lists the package versions associated to the package.</p> * @public */ packageVersionSummaries?: PackageVersionSummary[] | undefined; /** * <p>The token for the next set of results.</p> * @public */ nextToken?: string | undefined; } /** * <p>The input for the ListPolicies operation.</p> * @public */ export interface ListPoliciesRequest { /** * <p>The marker for the next set of results.</p> * @public */ marker?: string | undefined; /** * <p>The result page size.</p> * @public */ pageSize?: number | undefined; /** * <p>Specifies the order for results. If true, the results are returned in ascending * creation order.</p> * @public */ ascendingOrder?: boolean | undefined; } /** * <p>The output from the ListPolicies operation.</p> * @public */ export interface ListPoliciesResponse { /** * <p>The descriptions of the policies.</p> * @public */ policies?: Policy[] | undefined; /** * <p>The marker for the next set of results, or null if there are no additional * results.</p> * @public */ nextMarker?: string | undefined; } /** * <p>The input for the ListPolicyPrincipals operation.</p> * @public */ export interface ListPolicyPrincipalsRequest { /** * <p>The policy name.</p> * @public */ policyName: string | undefined; /** * <p>The marker for the next set of results.</p> * @public */ marker?: string | undefined; /** * <p>The result page size.</p> * @public */ pageSize?: number | undefined; /** * <p>Specifies the order for results. If true, the results are returned in ascending * creation order.</p> * @public */ ascendingOrder?: boolean | undefined; } /** * <p>The output from the ListPolicyPrincipals operation.</p> * @public */ export interface ListPolicyPrincipalsResponse { /** * <p>The descriptions of the principals.</p> * @public */ principals?: string[] | undefined; /** * <p>The marker for the next set of results, or null if there are no additional * results.</p> * @public */ nextMarker?: string | undefined; } /** * <p>The input for the ListPolicyVersions operation.</p> * @public */ export interface ListPolicyVersionsRequest { /** * <p>The policy name.</p> * @public */ policyName: string | undefined; } /** * <p>Describes a policy version.</p> * @public */ export interface PolicyVersion { /** * <p>The policy version ID.</p> * @public */ versionId?: string | undefined; /** * <p>Specifies whether the policy version is the default.</p> * @public */ isDefaultVersion?: boolean | undefined; /** * <p>The date and time the policy was created.</p> * @public */ createDate?: Date | undefined; } /** * <p>The output from the ListPolicyVersions operation.</p> * @public */ export interface ListPolicyVersionsResponse { /** * <p>The policy versions.</p> * @public */ policyVersions?: PolicyVersion[] | undefined; } /** * <p>The input for the ListPrincipalPolicies operation.</p> * @public */ export interface ListPrincipalPoliciesRequest { /** * <p>The principal. Valid principals are CertificateArn (arn:aws:iot:<i>region</i>:<i>accountId</i>:cert/<i>certificateId</i>), thingGroupArn (arn:aws:iot:<i>region</i>:<i>accountId</i>:thinggroup/<i>groupName</i>) and CognitoId (<i>region</i>:<i>id</i>).</p> * @public */ principal: string | undefined; /** * <p>The marker for the next set of results.</p> * @public */ marker?: string | undefined; /** * <p>The result page size.</p> * @public */ pageSize?: number | undefined; /** * <p>Specifies the order for results. If true, results are returned in ascending creation * order.</p> * @public */ ascendingOrder?: boolean | undefined; } /** * <p>The output from the ListPrincipalPolicies operation.</p> * @public */ export interface ListPrincipalPoliciesResponse { /** * <p>The policies.</p> * @public */ policies?: Policy[] | undefined; /** * <p>The marker for the next set of results, or null if there are no additional * results.</p> * @public */ nextMarker?: string | undefined; } /** * <p>The input for the ListPrincipalThings operation.</p> * @public */ export interface ListPrincipalThingsRequest { /** * <p>To retrieve the next set of results, the <code>nextToken</code> * value from a previous response; otherwise <b>null</b> to receive * the first set of results.</p> * @public */ nextToken?: string | undefined; /** * <p>The maximum number of results to return in this operation.</p> * @public */ maxResults?: number | undefined; /** * <p>The principal.</p> * @public */ principal: string | undefined; } /** * <p>The output from the ListPrincipalThings operation.</p> * @public */ export interface ListPrincipalThingsResponse { /** * <p>The things.</p> * @public */ things?: string[] | undefined; /** * <p>The token to use to get the next set of results, or <b>null</b> if there are no additional results.</p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListPrincipalThingsV2Request { /** * <p>To retrieve the next set of results, the <code>nextToken</code> * value from a previous response; otherwise <b>null</b> to receive * the first set of results.</p> * @public */ nextToken?: string | undefined; /** * <p>The maximum number of results to return in this operation.</p> * @public */ maxResults?: number | undefined; /** * <p>The principal. A principal can be an X.509 certificate or an Amazon Cognito ID.</p> * @public */ principal: string | undefined; /** * <p>The type of the relation you want to filter in the response. If no value is provided in * this field, the response will list all things, including both the * <code>EXCLUSIVE_THING</code> and <code>NON_EXCLUSIVE_THING</code> attachment * types.</p> * <ul> * <li> * <p> * <code>EXCLUSIVE_THING</code> - Attaches the specified principal to the specified thing, exclusively. * The thing will be the only thing that’s attached to the principal.</p> * </li> * </ul> * <ul> * <li> * <p> * <code>NON_EXCLUSIVE_THING</code> - Attaches the specified principal to the specified thing. * Multiple things can be attached to the principal.</p> * </li> * </ul> * @public */ thingPrincipalType?: ThingPrincipalType | undefined; } /** * <p>An object that represents the thing and the type of relation it has with the principal.</p> * @public */ export interface PrincipalThingObject { /** * <p>The name of the thing.</p> * @public */ thingName: string | undefined; /** * <p>The type of the relation you want to specify when you attach a principal to a thing. * The value defaults to <code>NON_EXCLUSIVE_THING</code>.</p> * <ul> * <li> * <p> * <code>EXCLUSIVE_THING</code> - Attaches the specified principal to the specified thing, exclusively. * The thing will be the only thing that’s attached to the principal.</p> * </li> * </ul> * <ul> * <li> * <p> * <code>NON_EXCLUSIVE_THING</code> - Attaches the specified principal to the specified thing. * Multiple things can be attached to the principal.</p> * </li> * </ul> * @public */ thingPrincipalType?: ThingPrincipalType | undefined; } /** * @public */ export interface ListPrincipalThingsV2Response { /** * <p>A list of <code>thingPrincipalObject</code> that represents the principal and the type of relation it has with the thing.</p> * @public */ principalThingObjects?: PrincipalThingObject[] | undefined; /** * <p>The token to use to get the next set of results, or <b>null</b> if there are no additional results.</p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListProvisioningTemplatesRequest { /** * <p>The maximum number of results to return at one time.</p> * @public */ maxResults?: number | undefined; /** * <p>A token to retrieve the next set of results.</p> * @public */ nextToken?: string | undefined; } /** * <p>A summary of information about a provisioning template.</p> * @public */ export interface ProvisioningTemplateSummary { /** * <p>The ARN of the provisioning template.</p> * @public */ templateArn?: string | undefined; /** * <p>The name of the provisioning template.</p> * @public */ templateName?: string | undefined; /** * <p>The description of the provisioning template.</p> * @public */ description?: string | undefined; /** * <p>The date when the provisioning template summary was created.</p> * @public */ creationDate?: Date | undefined; /** * <p>The date when the provisioning template summary was last modified.</p> * @public */ lastModifiedDate?: Date | undefined; /** * <p>True if the fleet provision template is enabled, otherwise false.</p> * @public */ enabled?: boolean | undefined; /** * <p>The type you define in a provisioning template. You can create a template with only one type. * You can't change the template type after its creation. The default value is <code>FLEET_PROVISIONING</code>. * For more information about provisioning template, see: <a href="https://docs.aws.amazon.com/iot/latest/developerguide/provision-template.html">Provisioning template</a>. * </p> * @public */ type?: TemplateType | undefined; } /** * @public */ export interface ListProvisioningTemplatesResponse { /** * <p>A list of provisioning templates</p> * @public */ templates?: ProvisioningTemplateSummary[] | undefined; /** * <p>A token to retrieve the next set of results.</p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListProvisioningTemplateVersionsRequest { /** * <p>The name of the provisioning template.</p> * @public */ templateName: string | undefined; /** * <p>The maximum number of results to return at one time.</p> * @public */ maxResults?: number | undefined; /** * <p>A token to retrieve the next set of results.</p> * @public */ nextToken?: string | undefined; } /** * <p>A summary of information about a fleet provision template version.</p> * @public */ export interface ProvisioningTemplateVersionSummary { /** * <p>The ID of the fleet provisioning template version.</p> * @public */ versionId?: number | undefined; /** * <p>The date when the provisioning template version was created</p> * @public */ creationDate?: Date | undefined; /** * <p>True if the provisioning template version is the default version, otherwise * false.</p> * @public */ isDefaultVersion?: boolean | undefined; } /** * @public */ export interface ListProvisioningTemplateVersionsResponse { /** * <p>The list of provisioning template versions.</p> * @public */ versions?: ProvisioningTemplateVersionSummary[] | undefined; /** * <p>A token to retrieve the next set of results.</p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListRelatedResourcesForAuditFindingRequest { /** * <p>The finding Id.</p> * @public */ findingId: string | undefined; /** * <p>A token that can be used to retrieve the next set of results, * or <code>null</code> if there are no additional results.</p> * @public */ nextToken?: string | undefined; /** * <p>The maximum number of results to return at one time.</p> * @public */ maxResults?: number | undefined; } /** * @public */ export interface ListRelatedResourcesForAuditFindingResponse { /** * <p>The related resources.</p> * @public */ relatedResources?: RelatedResource[] | undefined; /** * <p>A token that can be used to retrieve the next set of results, * or <code>null</code> for the first API call.</p> * @public */ nextToken?: string | undefined; } /** * @public */ export interface ListRoleAliasesRequest { /** * <p>The maximum number of results to return at one time.</p> * @public */ pageSize?: number | undefined; /** * <p>A marker used to get the next set of results.</p> * @public */ marker?: string | undefined; /** * <p>Return the list of role aliases in ascending alphabetical order.</p> * @public */ ascendingOrder?: boolean | undefined; } /** * @public */ export interface ListRoleAliasesResponse { /** * <p>The role aliases.</p> * @public */ roleAliases?: string[] | undefined; /** * <p>A marker used to get the next set of results.</p> * @public */ nextMarker?: string | undefined; } /** * @public * @enum */ export declare const SbomValidationResult: { readonly FAILED: "FAILED"; readonly SUCCEEDED: "SUCCEEDED"; }; /** * @public */ export type SbomValidationResult = (typeof SbomValidationResult)[keyof typeof SbomValidationResult]; /** * @public */ export interface ListSbomValidationResultsRequest { /** * <p>The name of the new software package.</p> * @public */ packageName: string | undefined; /** * <p>The name of the new package version.</p> * @public */ versionName: string | undefined; /** * <p>The end result of the </p> * @public */ validationResult?: SbomValidationResult | undefined; /** * <p>The maximum number of results to return at one time.</p> * @public */ maxResults?: number | undefined; /** * <p>A token that can be used to retrieve the next set of results, or null if there are no additional results.</p> * @public */ nextToken?: string | undefined; } /** * @public * @enum */ export dec