import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * Provides a resource to manage image import
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as volcengine from "@volcengine/pulumi";
 *
 * const foo = new volcengine.ecs.ImageImport("foo", {
 *     bootMode: "UEFI",
 *     description: "acc-test",
 *     imageName: "acc-test-image",
 *     platform: "CentOS",
 *     projectName: "default",
 *     tags: [{
 *         key: "k1",
 *         value: "v1",
 *     }],
 *     url: "https://*****_system.qcow2",
 * });
 * ```
 *
 * ## Import
 *
 * ImageImport can be imported using the id, e.g.
 *
 * ```sh
 * $ pulumi import volcengine:ecs/imageImport:ImageImport default resource_id
 * ```
 */
export declare class ImageImport extends pulumi.CustomResource {
    /**
     * Get an existing ImageImport 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?: ImageImportState, opts?: pulumi.CustomResourceOptions): ImageImport;
    /**
     * Returns true if the given object is an instance of ImageImport.  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 ImageImport;
    /**
     * The architecture of the custom image. Valid values: `amd64`, `arm64`.
     */
    readonly architecture: pulumi.Output<string>;
    /**
     * The boot mode of the custom image. Valid values: `BIOS`, `UEFI`.
     */
    readonly bootMode: pulumi.Output<string>;
    /**
     * The create time of Image.
     */
    readonly createdAt: pulumi.Output<string>;
    /**
     * The description of the custom image.
     */
    readonly description: pulumi.Output<string | undefined>;
    /**
     * The name of the custom image.
     */
    readonly imageName: pulumi.Output<string>;
    /**
     * Whether the Image support cloud-init.
     */
    readonly isSupportCloudInit: pulumi.Output<boolean>;
    /**
     * The license type of the custom image. Valid values: `VolcanoEngine`.
     */
    readonly licenseType: pulumi.Output<string>;
    /**
     * The name of Image operating system.
     */
    readonly osName: pulumi.Output<string>;
    /**
     * The os type of the custom image. Valid values: `linux`, `Windows`.
     */
    readonly osType: pulumi.Output<string>;
    /**
     * The platform of the custom image. Valid values: `CentOS`, `Debian`, `veLinux`, `Windows Server`, `Fedora`, `OpenSUSE`, `Ubuntu`, `Rocky Linux`, `AlmaLinux`.
     */
    readonly platform: pulumi.Output<string>;
    /**
     * The platform version of the custom image.
     */
    readonly platformVersion: pulumi.Output<string>;
    /**
     * The project name of the custom image.
     */
    readonly projectName: pulumi.Output<string>;
    /**
     * The share mode of Image.
     */
    readonly shareStatus: pulumi.Output<string>;
    /**
     * The size(GiB) of Image.
     */
    readonly size: pulumi.Output<number>;
    /**
     * The status of Image.
     */
    readonly status: pulumi.Output<string>;
    /**
     * Tags.
     */
    readonly tags: pulumi.Output<outputs.ecs.ImageImportTag[] | undefined>;
    /**
     * The update time of Image.
     */
    readonly updatedAt: pulumi.Output<string>;
    /**
     * The url of the custom image in tos bucket.When importing resources, this attribute will not be imported. If this attribute is set, please use lifecycle and ignoreChanges ignore changes in fields.
     */
    readonly url: pulumi.Output<string>;
    /**
     * The visibility of Image.
     */
    readonly visibility: pulumi.Output<string>;
    /**
     * Create a ImageImport 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: ImageImportArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * Input properties used for looking up and filtering ImageImport resources.
 */
export interface ImageImportState {
    /**
     * The architecture of the custom image. Valid values: `amd64`, `arm64`.
     */
    architecture?: pulumi.Input<string>;
    /**
     * The boot mode of the custom image. Valid values: `BIOS`, `UEFI`.
     */
    bootMode?: pulumi.Input<string>;
    /**
     * The create time of Image.
     */
    createdAt?: pulumi.Input<string>;
    /**
     * The description of the custom image.
     */
    description?: pulumi.Input<string>;
    /**
     * The name of the custom image.
     */
    imageName?: pulumi.Input<string>;
    /**
     * Whether the Image support cloud-init.
     */
    isSupportCloudInit?: pulumi.Input<boolean>;
    /**
     * The license type of the custom image. Valid values: `VolcanoEngine`.
     */
    licenseType?: pulumi.Input<string>;
    /**
     * The name of Image operating system.
     */
    osName?: pulumi.Input<string>;
    /**
     * The os type of the custom image. Valid values: `linux`, `Windows`.
     */
    osType?: pulumi.Input<string>;
    /**
     * The platform of the custom image. Valid values: `CentOS`, `Debian`, `veLinux`, `Windows Server`, `Fedora`, `OpenSUSE`, `Ubuntu`, `Rocky Linux`, `AlmaLinux`.
     */
    platform?: pulumi.Input<string>;
    /**
     * The platform version of the custom image.
     */
    platformVersion?: pulumi.Input<string>;
    /**
     * The project name of the custom image.
     */
    projectName?: pulumi.Input<string>;
    /**
     * The share mode of Image.
     */
    shareStatus?: pulumi.Input<string>;
    /**
     * The size(GiB) of Image.
     */
    size?: pulumi.Input<number>;
    /**
     * The status of Image.
     */
    status?: pulumi.Input<string>;
    /**
     * Tags.
     */
    tags?: pulumi.Input<pulumi.Input<inputs.ecs.ImageImportTag>[]>;
    /**
     * The update time of Image.
     */
    updatedAt?: pulumi.Input<string>;
    /**
     * The url of the custom image in tos bucket.When importing resources, this attribute will not be imported. If this attribute is set, please use lifecycle and ignoreChanges ignore changes in fields.
     */
    url?: pulumi.Input<string>;
    /**
     * The visibility of Image.
     */
    visibility?: pulumi.Input<string>;
}
/**
 * The set of arguments for constructing a ImageImport resource.
 */
export interface ImageImportArgs {
    /**
     * The architecture of the custom image. Valid values: `amd64`, `arm64`.
     */
    architecture?: pulumi.Input<string>;
    /**
     * The boot mode of the custom image. Valid values: `BIOS`, `UEFI`.
     */
    bootMode?: pulumi.Input<string>;
    /**
     * The description of the custom image.
     */
    description?: pulumi.Input<string>;
    /**
     * The name of the custom image.
     */
    imageName: pulumi.Input<string>;
    /**
     * The license type of the custom image. Valid values: `VolcanoEngine`.
     */
    licenseType?: pulumi.Input<string>;
    /**
     * The os type of the custom image. Valid values: `linux`, `Windows`.
     */
    osType?: pulumi.Input<string>;
    /**
     * The platform of the custom image. Valid values: `CentOS`, `Debian`, `veLinux`, `Windows Server`, `Fedora`, `OpenSUSE`, `Ubuntu`, `Rocky Linux`, `AlmaLinux`.
     */
    platform: pulumi.Input<string>;
    /**
     * The platform version of the custom image.
     */
    platformVersion?: pulumi.Input<string>;
    /**
     * The project name of the custom image.
     */
    projectName?: pulumi.Input<string>;
    /**
     * Tags.
     */
    tags?: pulumi.Input<pulumi.Input<inputs.ecs.ImageImportTag>[]>;
    /**
     * The url of the custom image in tos bucket.When importing resources, this attribute will not be imported. If this attribute is set, please use lifecycle and ignoreChanges ignore changes in fields.
     */
    url: pulumi.Input<string>;
}
