import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * This resource provides the Workspace Application Task Schedule resource in Oracle Cloud Infrastructure Data Integration service.
 * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/data-integration/latest/WorkspaceApplicationTaskSchedule
 *
 * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/dataintegration
 *
 * Endpoint to be used create TaskSchedule.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testWorkspaceApplicationTaskSchedule = new oci.dataintegration.WorkspaceApplicationTaskSchedule("test_workspace_application_task_schedule", {
 *     applicationKey: workspaceApplicationTaskScheduleApplicationKey,
 *     identifier: workspaceApplicationTaskScheduleIdentifier,
 *     name: workspaceApplicationTaskScheduleName,
 *     workspaceId: testWorkspace.id,
 *     authMode: workspaceApplicationTaskScheduleAuthMode,
 *     configProviderDelegate: workspaceApplicationTaskScheduleConfigProviderDelegate,
 *     description: workspaceApplicationTaskScheduleDescription,
 *     endTimeMillis: workspaceApplicationTaskScheduleEndTimeMillis,
 *     expectedDuration: workspaceApplicationTaskScheduleExpectedDuration,
 *     expectedDurationUnit: workspaceApplicationTaskScheduleExpectedDurationUnit,
 *     isBackfillEnabled: workspaceApplicationTaskScheduleIsBackfillEnabled === "true",
 *     isConcurrentAllowed: workspaceApplicationTaskScheduleIsConcurrentAllowed === "true",
 *     isEnabled: workspaceApplicationTaskScheduleIsEnabled === "true",
 *     key: workspaceApplicationTaskScheduleKey,
 *     modelVersion: workspaceApplicationTaskScheduleModelVersion,
 *     numberOfRetries: Number(workspaceApplicationTaskScheduleNumberOfRetries),
 *     objectStatus: Number(workspaceApplicationTaskScheduleObjectStatus),
 *     objectVersion: Number(workspaceApplicationTaskScheduleObjectVersion),
 *     parentRef: {
 *         parent: workspaceApplicationTaskScheduleParentRefParent,
 *         rootDocId: testRootDoc.id,
 *     },
 *     registryMetadata: {
 *         aggregatorKey: workspaceApplicationTaskScheduleRegistryMetadataAggregatorKey,
 *         isFavorite: workspaceApplicationTaskScheduleRegistryMetadataIsFavorite === "true",
 *         key: workspaceApplicationTaskScheduleRegistryMetadataKey,
 *         labels: workspaceApplicationTaskScheduleRegistryMetadataLabels,
 *         registryVersion: Number(workspaceApplicationTaskScheduleRegistryMetadataRegistryVersion),
 *     },
 *     retryDelay: workspaceApplicationTaskScheduleRetryDelay,
 *     retryDelayUnit: workspaceApplicationTaskScheduleRetryDelayUnit,
 *     scheduleRef: {
 *         description: workspaceApplicationTaskScheduleScheduleRefDescription,
 *         frequencyDetails: {
 *             modelType: workspaceApplicationTaskScheduleScheduleRefFrequencyDetailsModelType,
 *             customExpression: workspaceApplicationTaskScheduleScheduleRefFrequencyDetailsCustomExpression,
 *             dayOfWeek: workspaceApplicationTaskScheduleScheduleRefFrequencyDetailsDayOfWeek,
 *             days: workspaceApplicationTaskScheduleScheduleRefFrequencyDetailsDays,
 *             frequency: workspaceApplicationTaskScheduleScheduleRefFrequencyDetailsFrequency,
 *             interval: Number(workspaceApplicationTaskScheduleScheduleRefFrequencyDetailsInterval),
 *             time: {
 *                 hour: Number(workspaceApplicationTaskScheduleScheduleRefFrequencyDetailsTimeHour),
 *                 minute: Number(workspaceApplicationTaskScheduleScheduleRefFrequencyDetailsTimeMinute),
 *                 second: Number(workspaceApplicationTaskScheduleScheduleRefFrequencyDetailsTimeSecond),
 *             },
 *             weekOfMonth: workspaceApplicationTaskScheduleScheduleRefFrequencyDetailsWeekOfMonth,
 *         },
 *         identifier: workspaceApplicationTaskScheduleScheduleRefIdentifier,
 *         isDaylightAdjustmentEnabled: workspaceApplicationTaskScheduleScheduleRefIsDaylightAdjustmentEnabled === "true",
 *         key: workspaceApplicationTaskScheduleScheduleRefKey,
 *         metadata: {
 *             aggregator: {
 *                 description: workspaceApplicationTaskScheduleScheduleRefMetadataAggregatorDescription,
 *                 identifier: workspaceApplicationTaskScheduleScheduleRefMetadataAggregatorIdentifier,
 *                 key: workspaceApplicationTaskScheduleScheduleRefMetadataAggregatorKey,
 *                 name: workspaceApplicationTaskScheduleScheduleRefMetadataAggregatorName,
 *                 type: workspaceApplicationTaskScheduleScheduleRefMetadataAggregatorType,
 *             },
 *             aggregatorKey: workspaceApplicationTaskScheduleScheduleRefMetadataAggregatorKey,
 *             countStatistics: {
 *                 objectTypeCountLists: [{
 *                     objectCount: workspaceApplicationTaskScheduleScheduleRefMetadataCountStatisticsObjectTypeCountListObjectCount,
 *                     objectType: workspaceApplicationTaskScheduleScheduleRefMetadataCountStatisticsObjectTypeCountListObjectType,
 *                 }],
 *             },
 *             createdBy: workspaceApplicationTaskScheduleScheduleRefMetadataCreatedBy,
 *             createdByName: workspaceApplicationTaskScheduleScheduleRefMetadataCreatedByName,
 *             identifierPath: workspaceApplicationTaskScheduleScheduleRefMetadataIdentifierPath,
 *             infoFields: workspaceApplicationTaskScheduleScheduleRefMetadataInfoFields,
 *             isFavorite: workspaceApplicationTaskScheduleScheduleRefMetadataIsFavorite === "true",
 *             labels: workspaceApplicationTaskScheduleScheduleRefMetadataLabels,
 *             registryVersion: Number(workspaceApplicationTaskScheduleScheduleRefMetadataRegistryVersion),
 *             timeCreated: workspaceApplicationTaskScheduleScheduleRefMetadataTimeCreated,
 *             timeUpdated: workspaceApplicationTaskScheduleScheduleRefMetadataTimeUpdated,
 *             updatedBy: workspaceApplicationTaskScheduleScheduleRefMetadataUpdatedBy,
 *             updatedByName: workspaceApplicationTaskScheduleScheduleRefMetadataUpdatedByName,
 *         },
 *         modelType: workspaceApplicationTaskScheduleScheduleRefModelType,
 *         modelVersion: workspaceApplicationTaskScheduleScheduleRefModelVersion,
 *         name: workspaceApplicationTaskScheduleScheduleRefName,
 *         objectStatus: Number(workspaceApplicationTaskScheduleScheduleRefObjectStatus),
 *         objectVersion: Number(workspaceApplicationTaskScheduleScheduleRefObjectVersion),
 *         parentRef: {
 *             parent: workspaceApplicationTaskScheduleScheduleRefParentRefParent,
 *             rootDocId: testRootDoc.id,
 *         },
 *         timezone: workspaceApplicationTaskScheduleScheduleRefTimezone,
 *     },
 *     startTimeMillis: workspaceApplicationTaskScheduleStartTimeMillis,
 * });
 * ```
 *
 * ## Import
 *
 * WorkspaceApplicationTaskSchedules can be imported using the `id`, e.g.
 *
 * ```sh
 * $ pulumi import oci:DataIntegration/workspaceApplicationTaskSchedule:WorkspaceApplicationTaskSchedule test_workspace_application_task_schedule "workspaces/{workspaceId}/applications/{applicationKey}/taskSchedules/{taskScheduleKey}"
 * ```
 */
export declare class WorkspaceApplicationTaskSchedule extends pulumi.CustomResource {
    /**
     * Get an existing WorkspaceApplicationTaskSchedule 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 state Any extra arguments used during the lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, state?: WorkspaceApplicationTaskScheduleState, opts?: pulumi.CustomResourceOptions): WorkspaceApplicationTaskSchedule;
    /**
     * Returns true if the given object is an instance of WorkspaceApplicationTaskSchedule.  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 WorkspaceApplicationTaskSchedule;
    /**
     * The application key.
     */
    readonly applicationKey: pulumi.Output<string>;
    /**
     * (Updatable) The authorization mode for the task.
     */
    readonly authMode: pulumi.Output<string>;
    /**
     * (Updatable) The information about the configuration provider.
     */
    readonly configProviderDelegate: pulumi.Output<string>;
    /**
     * (Updatable) Detailed description for the object.
     */
    readonly description: pulumi.Output<string>;
    /**
     * (Updatable) The end time in milliseconds.
     */
    readonly endTimeMillis: pulumi.Output<string>;
    /**
     * (Updatable) The expected duration of the task execution.
     */
    readonly expectedDuration: pulumi.Output<number>;
    /**
     * (Updatable) The expected duration unit of the task execution.
     */
    readonly expectedDurationUnit: pulumi.Output<string>;
    /**
     * (Updatable) Value can only contain upper case letters, underscore, and numbers. It should begin with upper case letter or underscore. The value can be modified.
     */
    readonly identifier: pulumi.Output<string>;
    /**
     * (Updatable) Whether the backfill is enabled.
     */
    readonly isBackfillEnabled: pulumi.Output<boolean>;
    /**
     * (Updatable) Whether the same task can be executed concurrently.
     */
    readonly isConcurrentAllowed: pulumi.Output<boolean>;
    /**
     * (Updatable) Whether the task schedule is enabled.
     */
    readonly isEnabled: pulumi.Output<boolean>;
    /**
     * (Updatable) Generated key that can be used in API calls to identify taskSchedule. On scenarios where reference to the taskSchedule is needed, a value can be passed in create.
     */
    readonly key: pulumi.Output<string>;
    /**
     * The last run details for the task run.
     */
    readonly lastRunDetails: pulumi.Output<outputs.DataIntegration.WorkspaceApplicationTaskScheduleLastRunDetail[]>;
    /**
     * A summary type containing information about the object including its key, name and when/who created/updated it.
     */
    readonly metadatas: pulumi.Output<outputs.DataIntegration.WorkspaceApplicationTaskScheduleMetadata[]>;
    /**
     * The type of the object.
     */
    readonly modelType: pulumi.Output<string>;
    /**
     * (Updatable) This is a version number that is used by the service to upgrade objects if needed through releases of the service.
     */
    readonly modelVersion: pulumi.Output<string>;
    /**
     * (Updatable) Free form text without any restriction on permitted characters. Name can have letters, numbers, and special characters. The value is editable and is restricted to 1000 characters.
     */
    readonly name: pulumi.Output<string>;
    readonly nextRunTimeMillis: pulumi.Output<string>;
    /**
     * (Updatable) The number of retries.
     */
    readonly numberOfRetries: pulumi.Output<number>;
    /**
     * (Updatable) The status of an object that can be set to value 1 for shallow references across objects, other values reserved.
     */
    readonly objectStatus: pulumi.Output<number>;
    /**
     * (Updatable) This is used by the service for optimistic locking of the object, to prevent multiple users from simultaneously updating the object.
     */
    readonly objectVersion: pulumi.Output<number>;
    /**
     * (Updatable) A reference to the object's parent.
     */
    readonly parentRef: pulumi.Output<outputs.DataIntegration.WorkspaceApplicationTaskScheduleParentRef>;
    /**
     * (Updatable) Information about the object and its parent.
     */
    readonly registryMetadata: pulumi.Output<outputs.DataIntegration.WorkspaceApplicationTaskScheduleRegistryMetadata>;
    /**
     * The number of retry attempts.
     */
    readonly retryAttempts: pulumi.Output<number>;
    /**
     * (Updatable) The retry delay, the unit for measurement is in the property retry delay unit.
     */
    readonly retryDelay: pulumi.Output<number>;
    /**
     * (Updatable) The unit for the retry delay.
     */
    readonly retryDelayUnit: pulumi.Output<string>;
    /**
     * (Updatable) The schedule object
     */
    readonly scheduleRef: pulumi.Output<outputs.DataIntegration.WorkspaceApplicationTaskScheduleScheduleRef>;
    /**
     * (Updatable) The start time in milliseconds.
     */
    readonly startTimeMillis: pulumi.Output<string>;
    /**
     * The workspace ID.
     *
     *
     * ** IMPORTANT **
     * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
     */
    readonly workspaceId: pulumi.Output<string>;
    /**
     * Create a WorkspaceApplicationTaskSchedule 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: WorkspaceApplicationTaskScheduleArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * Input properties used for looking up and filtering WorkspaceApplicationTaskSchedule resources.
 */
export interface WorkspaceApplicationTaskScheduleState {
    /**
     * The application key.
     */
    applicationKey?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The authorization mode for the task.
     */
    authMode?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The information about the configuration provider.
     */
    configProviderDelegate?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Detailed description for the object.
     */
    description?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The end time in milliseconds.
     */
    endTimeMillis?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The expected duration of the task execution.
     */
    expectedDuration?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The expected duration unit of the task execution.
     */
    expectedDurationUnit?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Value can only contain upper case letters, underscore, and numbers. It should begin with upper case letter or underscore. The value can be modified.
     */
    identifier?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Whether the backfill is enabled.
     */
    isBackfillEnabled?: pulumi.Input<boolean | undefined>;
    /**
     * (Updatable) Whether the same task can be executed concurrently.
     */
    isConcurrentAllowed?: pulumi.Input<boolean | undefined>;
    /**
     * (Updatable) Whether the task schedule is enabled.
     */
    isEnabled?: pulumi.Input<boolean | undefined>;
    /**
     * (Updatable) Generated key that can be used in API calls to identify taskSchedule. On scenarios where reference to the taskSchedule is needed, a value can be passed in create.
     */
    key?: pulumi.Input<string | undefined>;
    /**
     * The last run details for the task run.
     */
    lastRunDetails?: pulumi.Input<pulumi.Input<inputs.DataIntegration.WorkspaceApplicationTaskScheduleLastRunDetail>[] | undefined>;
    /**
     * A summary type containing information about the object including its key, name and when/who created/updated it.
     */
    metadatas?: pulumi.Input<pulumi.Input<inputs.DataIntegration.WorkspaceApplicationTaskScheduleMetadata>[] | undefined>;
    /**
     * The type of the object.
     */
    modelType?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) This is a version number that is used by the service to upgrade objects if needed through releases of the service.
     */
    modelVersion?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Free form text without any restriction on permitted characters. Name can have letters, numbers, and special characters. The value is editable and is restricted to 1000 characters.
     */
    name?: pulumi.Input<string | undefined>;
    nextRunTimeMillis?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The number of retries.
     */
    numberOfRetries?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The status of an object that can be set to value 1 for shallow references across objects, other values reserved.
     */
    objectStatus?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) This is used by the service for optimistic locking of the object, to prevent multiple users from simultaneously updating the object.
     */
    objectVersion?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) A reference to the object's parent.
     */
    parentRef?: pulumi.Input<inputs.DataIntegration.WorkspaceApplicationTaskScheduleParentRef | undefined>;
    /**
     * (Updatable) Information about the object and its parent.
     */
    registryMetadata?: pulumi.Input<inputs.DataIntegration.WorkspaceApplicationTaskScheduleRegistryMetadata | undefined>;
    /**
     * The number of retry attempts.
     */
    retryAttempts?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The retry delay, the unit for measurement is in the property retry delay unit.
     */
    retryDelay?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The unit for the retry delay.
     */
    retryDelayUnit?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The schedule object
     */
    scheduleRef?: pulumi.Input<inputs.DataIntegration.WorkspaceApplicationTaskScheduleScheduleRef | undefined>;
    /**
     * (Updatable) The start time in milliseconds.
     */
    startTimeMillis?: pulumi.Input<string | undefined>;
    /**
     * The workspace ID.
     *
     *
     * ** IMPORTANT **
     * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
     */
    workspaceId?: pulumi.Input<string | undefined>;
}
/**
 * The set of arguments for constructing a WorkspaceApplicationTaskSchedule resource.
 */
export interface WorkspaceApplicationTaskScheduleArgs {
    /**
     * The application key.
     */
    applicationKey: pulumi.Input<string>;
    /**
     * (Updatable) The authorization mode for the task.
     */
    authMode?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The information about the configuration provider.
     */
    configProviderDelegate?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Detailed description for the object.
     */
    description?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The end time in milliseconds.
     */
    endTimeMillis?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The expected duration of the task execution.
     */
    expectedDuration?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The expected duration unit of the task execution.
     */
    expectedDurationUnit?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Value can only contain upper case letters, underscore, and numbers. It should begin with upper case letter or underscore. The value can be modified.
     */
    identifier: pulumi.Input<string>;
    /**
     * (Updatable) Whether the backfill is enabled.
     */
    isBackfillEnabled?: pulumi.Input<boolean | undefined>;
    /**
     * (Updatable) Whether the same task can be executed concurrently.
     */
    isConcurrentAllowed?: pulumi.Input<boolean | undefined>;
    /**
     * (Updatable) Whether the task schedule is enabled.
     */
    isEnabled?: pulumi.Input<boolean | undefined>;
    /**
     * (Updatable) Generated key that can be used in API calls to identify taskSchedule. On scenarios where reference to the taskSchedule is needed, a value can be passed in create.
     */
    key?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) This is a version number that is used by the service to upgrade objects if needed through releases of the service.
     */
    modelVersion?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Free form text without any restriction on permitted characters. Name can have letters, numbers, and special characters. The value is editable and is restricted to 1000 characters.
     */
    name?: pulumi.Input<string | undefined>;
    nextRunTimeMillis?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The number of retries.
     */
    numberOfRetries?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The status of an object that can be set to value 1 for shallow references across objects, other values reserved.
     */
    objectStatus?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) This is used by the service for optimistic locking of the object, to prevent multiple users from simultaneously updating the object.
     */
    objectVersion?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) A reference to the object's parent.
     */
    parentRef?: pulumi.Input<inputs.DataIntegration.WorkspaceApplicationTaskScheduleParentRef | undefined>;
    /**
     * (Updatable) Information about the object and its parent.
     */
    registryMetadata?: pulumi.Input<inputs.DataIntegration.WorkspaceApplicationTaskScheduleRegistryMetadata | undefined>;
    /**
     * (Updatable) The retry delay, the unit for measurement is in the property retry delay unit.
     */
    retryDelay?: pulumi.Input<number | undefined>;
    /**
     * (Updatable) The unit for the retry delay.
     */
    retryDelayUnit?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The schedule object
     */
    scheduleRef?: pulumi.Input<inputs.DataIntegration.WorkspaceApplicationTaskScheduleScheduleRef | undefined>;
    /**
     * (Updatable) The start time in milliseconds.
     */
    startTimeMillis?: pulumi.Input<string | undefined>;
    /**
     * The workspace ID.
     *
     *
     * ** IMPORTANT **
     * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
     */
    workspaceId: pulumi.Input<string>;
}
//# sourceMappingURL=workspaceApplicationTaskSchedule.d.ts.map