import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Use this data source to query detailed information of rds mysql tasks
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as volcengine from "@pulumi/volcengine";
 *
 * const foo = volcengine.rds_mysql.getTasks({
 *     creationEndTime: "2025-06-23T00:00:00Z",
 *     creationStartTime: "2025-06-21T00:00:00Z",
 *     instanceId: "mysql-b51d37110dd1",
 * });
 * ```
 */
export declare function getTasks(args?: GetTasksArgs, opts?: pulumi.InvokeOptions): Promise<GetTasksResult>;
/**
 * A collection of arguments for invoking getTasks.
 */
export interface GetTasksArgs {
    /**
     * The end time of the task. The time format is yyyy-MM-ddTHH:mm:ssZ (UTC time). Instructions: For the two groups of parameters, task time (CreationStartTime and CreationEndTime) and TaskId, one of them must be selected. The maximum time interval between the task start time (CreationStartTime) and the task end time (CreationEndTime) shall not exceed 7 days.
     */
    creationEndTime?: string;
    /**
     * The start time of the task. The time format is yyyy-MM-ddTHH:mm:ssZ (UTC time). Instructions: For the two groups of parameters, task time (CreationStartTime and CreationEndTime) and TaskId, one of them must be selected. The maximum time interval between the task start time (CreationStartTime) and the task end time (CreationEndTime) cannot exceed 7 days.
     */
    creationStartTime?: string;
    /**
     * Instance ID.
     */
    instanceId?: string;
    /**
     * File name where to save data source results.
     */
    outputFile?: string;
    /**
     * The project name.
     */
    projectName?: string;
    /**
     * Task name.
     */
    taskAction?: string;
    /**
     * Task Category. The values are as shown in the following list, and multiple values can be selected: BackupRecoveryManagement: Backup and Recovery Management. DatabaseAdminManagement: Database Administration Management. DatabaseProxy: Database Proxy. HighAvailability: High Availability. InstanceAttribute: Instance Attribute. InstanceManagement: Instance Management. NetworkManagement: Network Management. SecurityManagement: Security Management. SystemMaintainManagement: System Operation and Maintenance Management. VersionUpgrade: Version Upgrade.
     */
    taskCategories?: string[];
    /**
     * Task ID. Description: For the two groups of parameters, TaskId and task time (CreationStartTime and CreationEndTime), one of them must be selected.
     */
    taskId?: string;
    /**
     * Task source. Values: User: Tenant. System: System. SystemUser: Internal operation and maintenance. UserMaintain: Maintenance operations initiated by system/operation and maintenance administrators and visible to tenants.
     */
    taskSource?: string;
    /**
     * Task status. The values are as shown in the following list, and multiple values can be selected: WaitSwitch: Waiting for switching. WaitStart: Waiting for execution. Canceled: Canceled. Stopped: Terminated. Running_BeforeSwitch: Running (before switching). Timeout: Execution Timeout. Success: Execution Success. Failed: Execution Failed. Running: In Execution. Stopping: In Termination.
     */
    taskStatuses?: string[];
    /**
     * Task type. Values: Web: Console request. OpenAPI: OpenAPI request. AssumeRole: Role - playing request. Other: Other requests.
     */
    taskType?: string;
}
/**
 * A collection of values returned by getTasks.
 */
export interface GetTasksResult {
    readonly creationEndTime?: string;
    readonly creationStartTime?: string;
    /**
     * The collection of query.
     */
    readonly datas: outputs.rds_mysql.GetTasksData[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * Instance ID.
     */
    readonly instanceId?: string;
    readonly outputFile?: string;
    readonly projectName?: string;
    /**
     * Task name.
     */
    readonly taskAction?: string;
    /**
     * Task category.
     */
    readonly taskCategories?: string[];
    /**
     * Task ID.
     */
    readonly taskId?: string;
    readonly taskSource?: string;
    /**
     * Task status. The values are as shown in the following list, and multiple values can be selected: WaitSwitch: Waiting for switching. WaitStart: Waiting for execution. Canceled: Canceled. Stopped: Terminated. Running_BeforeSwitch: Running (before switching). Timeout: Execution Timeout. Success: Execution Success. Failed: Execution Failed. Running: In Execution. Stopping: In Termination.
     */
    readonly taskStatuses?: string[];
    readonly taskType?: string;
    /**
     * The total count of query.
     */
    readonly totalCount: number;
}
/**
 * Use this data source to query detailed information of rds mysql tasks
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as volcengine from "@pulumi/volcengine";
 *
 * const foo = volcengine.rds_mysql.getTasks({
 *     creationEndTime: "2025-06-23T00:00:00Z",
 *     creationStartTime: "2025-06-21T00:00:00Z",
 *     instanceId: "mysql-b51d37110dd1",
 * });
 * ```
 */
export declare function getTasksOutput(args?: GetTasksOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetTasksResult>;
/**
 * A collection of arguments for invoking getTasks.
 */
export interface GetTasksOutputArgs {
    /**
     * The end time of the task. The time format is yyyy-MM-ddTHH:mm:ssZ (UTC time). Instructions: For the two groups of parameters, task time (CreationStartTime and CreationEndTime) and TaskId, one of them must be selected. The maximum time interval between the task start time (CreationStartTime) and the task end time (CreationEndTime) shall not exceed 7 days.
     */
    creationEndTime?: pulumi.Input<string>;
    /**
     * The start time of the task. The time format is yyyy-MM-ddTHH:mm:ssZ (UTC time). Instructions: For the two groups of parameters, task time (CreationStartTime and CreationEndTime) and TaskId, one of them must be selected. The maximum time interval between the task start time (CreationStartTime) and the task end time (CreationEndTime) cannot exceed 7 days.
     */
    creationStartTime?: pulumi.Input<string>;
    /**
     * Instance ID.
     */
    instanceId?: pulumi.Input<string>;
    /**
     * File name where to save data source results.
     */
    outputFile?: pulumi.Input<string>;
    /**
     * The project name.
     */
    projectName?: pulumi.Input<string>;
    /**
     * Task name.
     */
    taskAction?: pulumi.Input<string>;
    /**
     * Task Category. The values are as shown in the following list, and multiple values can be selected: BackupRecoveryManagement: Backup and Recovery Management. DatabaseAdminManagement: Database Administration Management. DatabaseProxy: Database Proxy. HighAvailability: High Availability. InstanceAttribute: Instance Attribute. InstanceManagement: Instance Management. NetworkManagement: Network Management. SecurityManagement: Security Management. SystemMaintainManagement: System Operation and Maintenance Management. VersionUpgrade: Version Upgrade.
     */
    taskCategories?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * Task ID. Description: For the two groups of parameters, TaskId and task time (CreationStartTime and CreationEndTime), one of them must be selected.
     */
    taskId?: pulumi.Input<string>;
    /**
     * Task source. Values: User: Tenant. System: System. SystemUser: Internal operation and maintenance. UserMaintain: Maintenance operations initiated by system/operation and maintenance administrators and visible to tenants.
     */
    taskSource?: pulumi.Input<string>;
    /**
     * Task status. The values are as shown in the following list, and multiple values can be selected: WaitSwitch: Waiting for switching. WaitStart: Waiting for execution. Canceled: Canceled. Stopped: Terminated. Running_BeforeSwitch: Running (before switching). Timeout: Execution Timeout. Success: Execution Success. Failed: Execution Failed. Running: In Execution. Stopping: In Termination.
     */
    taskStatuses?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * Task type. Values: Web: Console request. OpenAPI: OpenAPI request. AssumeRole: Role - playing request. Other: Other requests.
     */
    taskType?: pulumi.Input<string>;
}
