import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * This data source provides the list of Occ Availability Catalog Occ Availabilities in Oracle Cloud Infrastructure Capacity Management service.
 *
 * Lists availabilities for a particular availability catalog.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testOccAvailabilityCatalogOccAvailabilities = oci.capacitymanagement.getOccAvailabilityCatalogOccAvailabilities({
 *     occAvailabilityCatalogId: testOccAvailabilityCatalog.id,
 *     dateExpectedCapacityHandover: occAvailabilityCatalogOccAvailabilityDateExpectedCapacityHandover,
 *     resourceName: testResource.name,
 *     resourceType: occAvailabilityCatalogOccAvailabilityResourceType,
 *     workloadType: occAvailabilityCatalogOccAvailabilityWorkloadType,
 * });
 * ```
 */
export declare function getOccAvailabilityCatalogOccAvailabilities(args: GetOccAvailabilityCatalogOccAvailabilitiesArgs, opts?: pulumi.InvokeOptions): Promise<GetOccAvailabilityCatalogOccAvailabilitiesResult>;
/**
 * A collection of arguments for invoking getOccAvailabilityCatalogOccAvailabilities.
 */
export interface GetOccAvailabilityCatalogOccAvailabilitiesArgs {
    /**
     * The capacity handover date of the capacity constraint to filter the list of capacity constraints.
     */
    dateExpectedCapacityHandover?: string;
    filters?: inputs.CapacityManagement.GetOccAvailabilityCatalogOccAvailabilitiesFilter[];
    /**
     * The OCID of the availability catalog.
     */
    occAvailabilityCatalogId: string;
    /**
     * The name of the resource to filter the list of capacity constraints.
     */
    resourceName?: string;
    /**
     * Resource type using which the capacity constraints of an availability catalog can be filtered.
     */
    resourceType?: string;
    /**
     * Workload type using the resources in an availability catalog can be filtered.
     */
    workloadType?: string;
}
/**
 * A collection of values returned by getOccAvailabilityCatalogOccAvailabilities.
 */
export interface GetOccAvailabilityCatalogOccAvailabilitiesResult {
    /**
     * The date by which the capacity requested by customers before dateFinalCustomerOrder needs to be fulfilled.
     */
    readonly dateExpectedCapacityHandover?: string;
    readonly filters?: outputs.CapacityManagement.GetOccAvailabilityCatalogOccAvailabilitiesFilter[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly occAvailabilityCatalogId: string;
    /**
     * The list of occ_availability_collection.
     */
    readonly occAvailabilityCollections: outputs.CapacityManagement.GetOccAvailabilityCatalogOccAvailabilitiesOccAvailabilityCollection[];
    /**
     * The name of the resource that the customer can request.
     */
    readonly resourceName?: string;
    /**
     * The different types of resources against which customers can place capacity requests.
     */
    readonly resourceType?: string;
    /**
     * The type of workload (Generic/ROW).
     */
    readonly workloadType?: string;
}
/**
 * This data source provides the list of Occ Availability Catalog Occ Availabilities in Oracle Cloud Infrastructure Capacity Management service.
 *
 * Lists availabilities for a particular availability catalog.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testOccAvailabilityCatalogOccAvailabilities = oci.capacitymanagement.getOccAvailabilityCatalogOccAvailabilities({
 *     occAvailabilityCatalogId: testOccAvailabilityCatalog.id,
 *     dateExpectedCapacityHandover: occAvailabilityCatalogOccAvailabilityDateExpectedCapacityHandover,
 *     resourceName: testResource.name,
 *     resourceType: occAvailabilityCatalogOccAvailabilityResourceType,
 *     workloadType: occAvailabilityCatalogOccAvailabilityWorkloadType,
 * });
 * ```
 */
export declare function getOccAvailabilityCatalogOccAvailabilitiesOutput(args: GetOccAvailabilityCatalogOccAvailabilitiesOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetOccAvailabilityCatalogOccAvailabilitiesResult>;
/**
 * A collection of arguments for invoking getOccAvailabilityCatalogOccAvailabilities.
 */
export interface GetOccAvailabilityCatalogOccAvailabilitiesOutputArgs {
    /**
     * The capacity handover date of the capacity constraint to filter the list of capacity constraints.
     */
    dateExpectedCapacityHandover?: pulumi.Input<string | undefined>;
    filters?: pulumi.Input<pulumi.Input<inputs.CapacityManagement.GetOccAvailabilityCatalogOccAvailabilitiesFilterArgs>[] | undefined>;
    /**
     * The OCID of the availability catalog.
     */
    occAvailabilityCatalogId: pulumi.Input<string>;
    /**
     * The name of the resource to filter the list of capacity constraints.
     */
    resourceName?: pulumi.Input<string | undefined>;
    /**
     * Resource type using which the capacity constraints of an availability catalog can be filtered.
     */
    resourceType?: pulumi.Input<string | undefined>;
    /**
     * Workload type using the resources in an availability catalog can be filtered.
     */
    workloadType?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getOccAvailabilityCatalogOccAvailabilities.d.ts.map