import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Resource Type definition for AWS::IoT::JobTemplate. Job templates enable you to preconfigure jobs so that you can deploy them to multiple sets of target devices. */ export declare class JobTemplate extends pulumi.CustomResource { /** * Get an existing JobTemplate resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): JobTemplate; /** * Returns true if the given object is an instance of JobTemplate. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is JobTemplate; /** * The criteria that determine when and how a job abort takes place. */ readonly abortConfig: pulumi.Output; /** * The ARN of the job to use as the basis for the job template. */ readonly arn: pulumi.Output; /** * A description of the Job Template. */ readonly description: pulumi.Output; /** * The package version Amazon Resource Names (ARNs) that are installed on the device’s reserved named shadow ( `$package` ) when the job successfully completes. * * *Note:* Up to 25 package version ARNS are allowed. */ readonly destinationPackageVersions: pulumi.Output; /** * The job document. Required if you don't specify a value for documentSource. */ readonly document: pulumi.Output; /** * An S3 link to the job document to use in the template. Required if you don't specify a value for document. */ readonly documentSource: pulumi.Output; /** * Optional for copying a JobTemplate from a pre-existing Job configuration. */ readonly jobArn: pulumi.Output; /** * Allows you to create the criteria to retry a job. */ readonly jobExecutionsRetryConfig: pulumi.Output; /** * Allows you to create a staged rollout of a job. */ readonly jobExecutionsRolloutConfig: pulumi.Output; /** * A unique identifier for the job template. We recommend using a UUID. Alpha-numeric characters, "-", and "_" are valid for use here. */ readonly jobTemplateId: pulumi.Output; /** * An optional configuration within the SchedulingConfig to setup a recurring maintenance window with a predetermined start time and duration for the rollout of a job document to all devices in a target group for a job. */ readonly maintenanceWindows: pulumi.Output; /** * Configuration for pre-signed S3 URLs. */ readonly presignedUrlConfig: pulumi.Output; /** * Metadata that can be used to manage the JobTemplate. */ readonly tags: pulumi.Output; /** * Specifies the amount of time each device has to finish its execution of the job. */ readonly timeoutConfig: pulumi.Output; /** * Create a JobTemplate resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: JobTemplateArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a JobTemplate resource. */ export interface JobTemplateArgs { /** * The criteria that determine when and how a job abort takes place. */ abortConfig?: pulumi.Input; /** * A description of the Job Template. */ description: pulumi.Input; /** * The package version Amazon Resource Names (ARNs) that are installed on the device’s reserved named shadow ( `$package` ) when the job successfully completes. * * *Note:* Up to 25 package version ARNS are allowed. */ destinationPackageVersions?: pulumi.Input[]>; /** * The job document. Required if you don't specify a value for documentSource. */ document?: pulumi.Input; /** * An S3 link to the job document to use in the template. Required if you don't specify a value for document. */ documentSource?: pulumi.Input; /** * Optional for copying a JobTemplate from a pre-existing Job configuration. */ jobArn?: pulumi.Input; /** * Allows you to create the criteria to retry a job. */ jobExecutionsRetryConfig?: pulumi.Input; /** * Allows you to create a staged rollout of a job. */ jobExecutionsRolloutConfig?: pulumi.Input; /** * A unique identifier for the job template. We recommend using a UUID. Alpha-numeric characters, "-", and "_" are valid for use here. */ jobTemplateId: pulumi.Input; /** * An optional configuration within the SchedulingConfig to setup a recurring maintenance window with a predetermined start time and duration for the rollout of a job document to all devices in a target group for a job. */ maintenanceWindows?: pulumi.Input[]>; /** * Configuration for pre-signed S3 URLs. */ presignedUrlConfig?: pulumi.Input; /** * Metadata that can be used to manage the JobTemplate. */ tags?: pulumi.Input[]>; /** * Specifies the amount of time each device has to finish its execution of the job. */ timeoutConfig?: pulumi.Input; }