import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * Provides a resource to manage tls download task
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as volcengine from "@volcengine/pulumi";
 *
 * const foo = new volcengine.tls.DownloadTask("foo", {
 *     topicId: "3c57a110-399a-43b3-bc3c-5d60e065239a",
 *     taskName: "tf-test-download",
 *     query: "*",
 *     startTime: 1768448896,
 *     endTime: 1768450896,
 *     compression: "gzip",
 *     dataFormat: "json",
 *     limit: 1000000,
 *     sort: "asc",
 *     allowIncomplete: false,
 *     taskType: 1,
 *     logContextInfos: {
 *         source: "your ip",
 *         contextFlow: "1768450893021#4258909d8fc97e7d-286d6d5f6966623c-6943",
 *         packageOffset: 4833728523,
 *     },
 * });
 * export const tlsDownloadTaskId = foo.taskId;
 * ```
 *
 * ## Import
 *
 * tls download task can be imported using the topic_id and task_id, e.g.
 *
 * ```sh
 * $ pulumi import volcengine:tls/downloadTask:DownloadTask default topic-123456:task-1234567890
 * ```
 */
export declare class DownloadTask extends pulumi.CustomResource {
    /**
     * Get an existing DownloadTask 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?: DownloadTaskState, opts?: pulumi.CustomResourceOptions): DownloadTask;
    /**
     * Returns true if the given object is an instance of DownloadTask.  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 DownloadTask;
    /**
     * Whether to allow incomplete download.
     */
    readonly allowIncomplete: pulumi.Output<boolean | undefined>;
    /**
     * The compression format of the downloaded file. Valid values: gzip.
     */
    readonly compression: pulumi.Output<string | undefined>;
    /**
     * The data format of the downloaded file. Valid values: csv, json.
     */
    readonly dataFormat: pulumi.Output<string | undefined>;
    /**
     * The download URL for the completed task.
     */
    readonly downloadUrl: pulumi.Output<string>;
    /**
     * The end time of the log data to download, in Unix timestamp format.
     */
    readonly endTime: pulumi.Output<number>;
    /**
     * The maximum number of log entries to download.
     */
    readonly limit: pulumi.Output<number | undefined>;
    /**
     * The info of the log context.
     */
    readonly logContextInfos: pulumi.Output<outputs.tls.DownloadTaskLogContextInfos | undefined>;
    /**
     * The query statement for the download task.
     */
    readonly query: pulumi.Output<string | undefined>;
    /**
     * The sorting order of the log data. Valid values: asc, desc.
     */
    readonly sort: pulumi.Output<string | undefined>;
    /**
     * The start time of the log data to download, in Unix timestamp format.
     */
    readonly startTime: pulumi.Output<number>;
    /**
     * The ID of the download task.
     */
    readonly taskId: pulumi.Output<string>;
    /**
     * The name of the download task.
     */
    readonly taskName: pulumi.Output<string>;
    /**
     * The status of the download task.
     */
    readonly taskStatus: pulumi.Output<string>;
    /**
     * The type of the download task.
     */
    readonly taskType: pulumi.Output<number>;
    /**
     * The ID of the log topic to which the download task belongs.
     */
    readonly topicId: pulumi.Output<string>;
    /**
     * Create a DownloadTask 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: DownloadTaskArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * Input properties used for looking up and filtering DownloadTask resources.
 */
export interface DownloadTaskState {
    /**
     * Whether to allow incomplete download.
     */
    allowIncomplete?: pulumi.Input<boolean>;
    /**
     * The compression format of the downloaded file. Valid values: gzip.
     */
    compression?: pulumi.Input<string>;
    /**
     * The data format of the downloaded file. Valid values: csv, json.
     */
    dataFormat?: pulumi.Input<string>;
    /**
     * The download URL for the completed task.
     */
    downloadUrl?: pulumi.Input<string>;
    /**
     * The end time of the log data to download, in Unix timestamp format.
     */
    endTime?: pulumi.Input<number>;
    /**
     * The maximum number of log entries to download.
     */
    limit?: pulumi.Input<number>;
    /**
     * The info of the log context.
     */
    logContextInfos?: pulumi.Input<inputs.tls.DownloadTaskLogContextInfos>;
    /**
     * The query statement for the download task.
     */
    query?: pulumi.Input<string>;
    /**
     * The sorting order of the log data. Valid values: asc, desc.
     */
    sort?: pulumi.Input<string>;
    /**
     * The start time of the log data to download, in Unix timestamp format.
     */
    startTime?: pulumi.Input<number>;
    /**
     * The ID of the download task.
     */
    taskId?: pulumi.Input<string>;
    /**
     * The name of the download task.
     */
    taskName?: pulumi.Input<string>;
    /**
     * The status of the download task.
     */
    taskStatus?: pulumi.Input<string>;
    /**
     * The type of the download task.
     */
    taskType?: pulumi.Input<number>;
    /**
     * The ID of the log topic to which the download task belongs.
     */
    topicId?: pulumi.Input<string>;
}
/**
 * The set of arguments for constructing a DownloadTask resource.
 */
export interface DownloadTaskArgs {
    /**
     * Whether to allow incomplete download.
     */
    allowIncomplete?: pulumi.Input<boolean>;
    /**
     * The compression format of the downloaded file. Valid values: gzip.
     */
    compression?: pulumi.Input<string>;
    /**
     * The data format of the downloaded file. Valid values: csv, json.
     */
    dataFormat?: pulumi.Input<string>;
    /**
     * The end time of the log data to download, in Unix timestamp format.
     */
    endTime: pulumi.Input<number>;
    /**
     * The maximum number of log entries to download.
     */
    limit?: pulumi.Input<number>;
    /**
     * The info of the log context.
     */
    logContextInfos?: pulumi.Input<inputs.tls.DownloadTaskLogContextInfos>;
    /**
     * The query statement for the download task.
     */
    query?: pulumi.Input<string>;
    /**
     * The sorting order of the log data. Valid values: asc, desc.
     */
    sort?: pulumi.Input<string>;
    /**
     * The start time of the log data to download, in Unix timestamp format.
     */
    startTime: pulumi.Input<number>;
    /**
     * The name of the download task.
     */
    taskName: pulumi.Input<string>;
    /**
     * The type of the download task.
     */
    taskType: pulumi.Input<number>;
    /**
     * The ID of the log topic to which the download task belongs.
     */
    topicId: pulumi.Input<string>;
}
