import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * This data source provides the list of available Firmware Versions.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as junipermist from "@pulumi/junipermist";
 *
 * const ap24Versions = junipermist.device.getVersions({
 *     orgId: "15fca2ac-b1a6-47cc-9953-cc6906281550",
 *     type: "ap",
 *     model: "AP24",
 * });
 * ```
 */
export declare function getVersions(args: GetVersionsArgs, opts?: pulumi.InvokeOptions): Promise<GetVersionsResult>;
/**
 * A collection of arguments for invoking getVersions.
 */
export interface GetVersionsArgs {
    /**
     * Fetch version for device model, use/combine with `type` as needed (for switch and gateway devices)
     */
    model: string;
    orgId: string;
    /**
     * enum: `ap`, `gateway`, `switch`
     */
    type: string;
}
/**
 * A collection of values returned by getVersions.
 */
export interface GetVersionsResult {
    readonly deviceVersions: outputs.device.GetVersionsDeviceVersion[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * Fetch version for device model, use/combine with `type` as needed (for switch and gateway devices)
     */
    readonly model: string;
    readonly orgId: string;
    /**
     * enum: `ap`, `gateway`, `switch`
     */
    readonly type: string;
}
/**
 * This data source provides the list of available Firmware Versions.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as junipermist from "@pulumi/junipermist";
 *
 * const ap24Versions = junipermist.device.getVersions({
 *     orgId: "15fca2ac-b1a6-47cc-9953-cc6906281550",
 *     type: "ap",
 *     model: "AP24",
 * });
 * ```
 */
export declare function getVersionsOutput(args: GetVersionsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetVersionsResult>;
/**
 * A collection of arguments for invoking getVersions.
 */
export interface GetVersionsOutputArgs {
    /**
     * Fetch version for device model, use/combine with `type` as needed (for switch and gateway devices)
     */
    model: pulumi.Input<string>;
    orgId: pulumi.Input<string>;
    /**
     * enum: `ap`, `gateway`, `switch`
     */
    type: pulumi.Input<string>;
}
