import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * This data source provides details about a specific Listing resource in Oracle Cloud Infrastructure Marketplace service.
 *
 * Gets detailed information about a listing, including the listing's name, version, description, and
 * resources.
 *
 * If you plan to launch an instance from an image listing, you must first subscribe to the listing. When
 * you launch the instance, you also need to provide the image ID of the listing resource version that you want.
 *
 * Subscribing to the listing requires you to first get a signature from the terms of use agreement for the
 * listing resource version. To get the signature, issue a [GetAppCatalogListingAgreements](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/AppCatalogListingResourceVersionAgreements/GetAppCatalogListingAgreements) API call.
 * The [AppCatalogListingResourceVersionAgreements](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/AppCatalogListingResourceVersionAgreements) object, including
 * its signature, is returned in the response. With the signature for the terms of use agreement for the desired
 * listing resource version, create a subscription by issuing a
 * [CreateAppCatalogSubscription](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/AppCatalogSubscription/CreateAppCatalogSubscription) API call.
 *
 * To get the image ID to launch an instance, issue a [GetAppCatalogListingResourceVersion](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/AppCatalogListingResourceVersion/GetAppCatalogListingResourceVersion) API call.
 * Lastly, to launch the instance, use the image ID of the listing resource version to issue a [LaunchInstance](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/Instance/LaunchInstance) API call.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testListing = oci.marketplace.getListing({
 *     listingId: testListingOciMarketplaceListing.id,
 *     compartmentId: compartmentId,
 * });
 * ```
 */
export declare function getListing(args: GetListingArgs, opts?: pulumi.InvokeOptions): Promise<GetListingResult>;
/**
 * A collection of arguments for invoking getListing.
 */
export interface GetListingArgs {
    /**
     * The unique identifier for the compartment. It is mandatory when used in non-commercial realms.
     */
    compartmentId?: string;
    /**
     * The unique identifier for the listing.
     */
    listingId: string;
}
/**
 * A collection of values returned by getListing.
 */
export interface GetListingResult {
    /**
     * The model for upload data for images and icons.
     */
    readonly banners: outputs.Marketplace.GetListingBanner[];
    /**
     * Product categories that the listing belongs to.
     */
    readonly categories: string[];
    readonly compartmentId?: string;
    /**
     * The list of compatible architectures supported by the listing
     */
    readonly compatibleArchitectures: string[];
    /**
     * The default package version.
     */
    readonly defaultPackageVersion: string;
    /**
     * Links to additional documentation provided by the publisher specifically for the listing.
     */
    readonly documentationLinks: outputs.Marketplace.GetListingDocumentationLink[];
    /**
     * The model for upload data for images and icons.
     */
    readonly icons: outputs.Marketplace.GetListingIcon[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * Indicates whether the listing is included in Featured Listings.
     */
    readonly isFeatured: boolean;
    /**
     * Keywords associated with the listing.
     */
    readonly keywords: string;
    /**
     * Languages supported by the listing.
     */
    readonly languages: outputs.Marketplace.GetListingLanguage[];
    /**
     * A description of the publisher's licensing model for the listing.
     */
    readonly licenseModelDescription: string;
    /**
     * Reference links.
     */
    readonly links: outputs.Marketplace.GetListingLink[];
    readonly listingId: string;
    /**
     * The publisher category to which the listing belongs. The publisher category informs where the listing appears for use.
     */
    readonly listingType: string;
    /**
     * A long description of the listing.
     */
    readonly longDescription: string;
    /**
     * Text that describes the resource.
     */
    readonly name: string;
    /**
     * The listing's package type.
     */
    readonly packageType: string;
    /**
     * Summary details about the publisher of the listing.
     */
    readonly publishers: outputs.Marketplace.GetListingPublisher[];
    /**
     * The regions where the listing is eligible to be deployed.
     */
    readonly regions: outputs.Marketplace.GetListingRegion[];
    /**
     * Release notes for the listing.
     */
    readonly releaseNotes: string;
    /**
     * Screenshots of the listing.
     */
    readonly screenshots: outputs.Marketplace.GetListingScreenshot[];
    /**
     * A short description of the listing.
     */
    readonly shortDescription: string;
    /**
     * Contact information to use to get support from the publisher for the listing.
     */
    readonly supportContacts: outputs.Marketplace.GetListingSupportContact[];
    /**
     * Links to support resources for the listing.
     */
    readonly supportLinks: outputs.Marketplace.GetListingSupportLink[];
    /**
     * The list of operating systems supported by the listing.
     */
    readonly supportedOperatingSystems: outputs.Marketplace.GetListingSupportedOperatingSystem[];
    /**
     * System requirements for the listing.
     */
    readonly systemRequirements: string;
    /**
     * The tagline of the listing.
     */
    readonly tagline: string;
    /**
     * The release date of the listing.
     */
    readonly timeReleased: string;
    /**
     * Usage information for the listing.
     */
    readonly usageInformation: string;
    /**
     * The version of the listing.
     */
    readonly version: string;
    /**
     * Videos of the listing.
     */
    readonly videos: outputs.Marketplace.GetListingVideo[];
}
/**
 * This data source provides details about a specific Listing resource in Oracle Cloud Infrastructure Marketplace service.
 *
 * Gets detailed information about a listing, including the listing's name, version, description, and
 * resources.
 *
 * If you plan to launch an instance from an image listing, you must first subscribe to the listing. When
 * you launch the instance, you also need to provide the image ID of the listing resource version that you want.
 *
 * Subscribing to the listing requires you to first get a signature from the terms of use agreement for the
 * listing resource version. To get the signature, issue a [GetAppCatalogListingAgreements](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/AppCatalogListingResourceVersionAgreements/GetAppCatalogListingAgreements) API call.
 * The [AppCatalogListingResourceVersionAgreements](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/AppCatalogListingResourceVersionAgreements) object, including
 * its signature, is returned in the response. With the signature for the terms of use agreement for the desired
 * listing resource version, create a subscription by issuing a
 * [CreateAppCatalogSubscription](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/AppCatalogSubscription/CreateAppCatalogSubscription) API call.
 *
 * To get the image ID to launch an instance, issue a [GetAppCatalogListingResourceVersion](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/AppCatalogListingResourceVersion/GetAppCatalogListingResourceVersion) API call.
 * Lastly, to launch the instance, use the image ID of the listing resource version to issue a [LaunchInstance](https://docs.cloud.oracle.com/en-us/iaas/api/#/en/iaas/latest/Instance/LaunchInstance) API call.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testListing = oci.marketplace.getListing({
 *     listingId: testListingOciMarketplaceListing.id,
 *     compartmentId: compartmentId,
 * });
 * ```
 */
export declare function getListingOutput(args: GetListingOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetListingResult>;
/**
 * A collection of arguments for invoking getListing.
 */
export interface GetListingOutputArgs {
    /**
     * The unique identifier for the compartment. It is mandatory when used in non-commercial realms.
     */
    compartmentId?: pulumi.Input<string | undefined>;
    /**
     * The unique identifier for the listing.
     */
    listingId: pulumi.Input<string>;
}
//# sourceMappingURL=getListing.d.ts.map