import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * This data source provides details about a specific Node Pool Option resource in Oracle Cloud Infrastructure Container Engine service.
 *
 * Get options available for node pools.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testNodePoolOption = oci.containerengine.getNodePoolOption({
 *     nodePoolOptionId: testNodePoolOptionOciContainerengineNodePoolOption.id,
 *     compartmentId: compartmentId,
 *     nodePoolK8sVersion: nodePoolOptionNodePoolK8sVersion,
 *     nodePoolOsArch: nodePoolOptionNodePoolOsArch,
 *     nodePoolOsType: nodePoolOptionNodePoolOsType,
 *     shouldListAllPatchVersions: nodePoolOptionShouldListAllPatchVersions === "true",
 * });
 * ```
 */
export declare function getNodePoolOption(args: GetNodePoolOptionArgs, opts?: pulumi.InvokeOptions): Promise<GetNodePoolOptionResult>;
/**
 * A collection of arguments for invoking getNodePoolOption.
 */
export interface GetNodePoolOptionArgs {
    /**
     * The OCID of the compartment.
     */
    compartmentId?: string;
    /**
     * Filter node pool options by Kubernetes version.
     */
    nodePoolK8sVersion?: string;
    /**
     * The id of the option set to retrieve. Use "all" get all options, or use a cluster ID to get options specific to the provided cluster.
     */
    nodePoolOptionId: string;
    /**
     * Filter node pool options by OS architecture.
     */
    nodePoolOsArch?: string;
    /**
     * Filter node pool options by OS type.
     */
    nodePoolOsType?: string;
    /**
     * Option to show all kubernetes patch versions
     */
    shouldListAllPatchVersions?: boolean;
}
/**
 * A collection of values returned by getNodePoolOption.
 */
export interface GetNodePoolOptionResult {
    readonly compartmentId?: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * Deprecated. See sources. When creating a node pool, only image names contained in this property can be passed to the `nodeImageName` property.
     */
    readonly images: string[];
    /**
     * Available Kubernetes versions.
     */
    readonly kubernetesVersions: string[];
    readonly nodePoolK8sVersion?: string;
    readonly nodePoolOptionId: string;
    readonly nodePoolOsArch?: string;
    readonly nodePoolOsType?: string;
    /**
     * Available shapes for nodes.
     */
    readonly shapes: string[];
    readonly shouldListAllPatchVersions?: boolean;
    /**
     * Available source of the node.
     */
    readonly sources: outputs.ContainerEngine.GetNodePoolOptionSource[];
}
/**
 * This data source provides details about a specific Node Pool Option resource in Oracle Cloud Infrastructure Container Engine service.
 *
 * Get options available for node pools.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testNodePoolOption = oci.containerengine.getNodePoolOption({
 *     nodePoolOptionId: testNodePoolOptionOciContainerengineNodePoolOption.id,
 *     compartmentId: compartmentId,
 *     nodePoolK8sVersion: nodePoolOptionNodePoolK8sVersion,
 *     nodePoolOsArch: nodePoolOptionNodePoolOsArch,
 *     nodePoolOsType: nodePoolOptionNodePoolOsType,
 *     shouldListAllPatchVersions: nodePoolOptionShouldListAllPatchVersions === "true",
 * });
 * ```
 */
export declare function getNodePoolOptionOutput(args: GetNodePoolOptionOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetNodePoolOptionResult>;
/**
 * A collection of arguments for invoking getNodePoolOption.
 */
export interface GetNodePoolOptionOutputArgs {
    /**
     * The OCID of the compartment.
     */
    compartmentId?: pulumi.Input<string | undefined>;
    /**
     * Filter node pool options by Kubernetes version.
     */
    nodePoolK8sVersion?: pulumi.Input<string | undefined>;
    /**
     * The id of the option set to retrieve. Use "all" get all options, or use a cluster ID to get options specific to the provided cluster.
     */
    nodePoolOptionId: pulumi.Input<string>;
    /**
     * Filter node pool options by OS architecture.
     */
    nodePoolOsArch?: pulumi.Input<string | undefined>;
    /**
     * Filter node pool options by OS type.
     */
    nodePoolOsType?: pulumi.Input<string | undefined>;
    /**
     * Option to show all kubernetes patch versions
     */
    shouldListAllPatchVersions?: pulumi.Input<boolean | undefined>;
}
//# sourceMappingURL=getNodePoolOption.d.ts.map