import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface DataOciMarketplaceListingConfig extends cdktf.TerraformMetaArguments {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/marketplace_listing#compartment_id DataOciMarketplaceListing#compartment_id}
    */
    readonly compartmentId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/marketplace_listing#id DataOciMarketplaceListing#id}
    *
    * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
    * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
    */
    readonly id?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/marketplace_listing#listing_id DataOciMarketplaceListing#listing_id}
    */
    readonly listingId: string;
}
export interface DataOciMarketplaceListingBanner {
}
export declare function dataOciMarketplaceListingBannerToTerraform(struct?: DataOciMarketplaceListingBanner): any;
export declare function dataOciMarketplaceListingBannerToHclTerraform(struct?: DataOciMarketplaceListingBanner): any;
export declare class DataOciMarketplaceListingBannerOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): DataOciMarketplaceListingBanner | undefined;
    set internalValue(value: DataOciMarketplaceListingBanner | undefined);
    get contentUrl(): string;
    get fileExtension(): string;
    get mimeType(): string;
    get name(): string;
}
export declare class DataOciMarketplaceListingBannerList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): DataOciMarketplaceListingBannerOutputReference;
}
export interface DataOciMarketplaceListingDocumentationLinks {
}
export declare function dataOciMarketplaceListingDocumentationLinksToTerraform(struct?: DataOciMarketplaceListingDocumentationLinks): any;
export declare function dataOciMarketplaceListingDocumentationLinksToHclTerraform(struct?: DataOciMarketplaceListingDocumentationLinks): any;
export declare class DataOciMarketplaceListingDocumentationLinksOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): DataOciMarketplaceListingDocumentationLinks | undefined;
    set internalValue(value: DataOciMarketplaceListingDocumentationLinks | undefined);
    get documentCategory(): string;
    get name(): string;
    get url(): string;
}
export declare class DataOciMarketplaceListingDocumentationLinksList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): DataOciMarketplaceListingDocumentationLinksOutputReference;
}
export interface DataOciMarketplaceListingIcon {
}
export declare function dataOciMarketplaceListingIconToTerraform(struct?: DataOciMarketplaceListingIcon): any;
export declare function dataOciMarketplaceListingIconToHclTerraform(struct?: DataOciMarketplaceListingIcon): any;
export declare class DataOciMarketplaceListingIconOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): DataOciMarketplaceListingIcon | undefined;
    set internalValue(value: DataOciMarketplaceListingIcon | undefined);
    get contentUrl(): string;
    get fileExtension(): string;
    get mimeType(): string;
    get name(): string;
}
export declare class DataOciMarketplaceListingIconList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): DataOciMarketplaceListingIconOutputReference;
}
export interface DataOciMarketplaceListingLanguages {
}
export declare function dataOciMarketplaceListingLanguagesToTerraform(struct?: DataOciMarketplaceListingLanguages): any;
export declare function dataOciMarketplaceListingLanguagesToHclTerraform(struct?: DataOciMarketplaceListingLanguages): any;
export declare class DataOciMarketplaceListingLanguagesOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): DataOciMarketplaceListingLanguages | undefined;
    set internalValue(value: DataOciMarketplaceListingLanguages | undefined);
    get code(): string;
    get name(): string;
}
export declare class DataOciMarketplaceListingLanguagesList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): DataOciMarketplaceListingLanguagesOutputReference;
}
export interface DataOciMarketplaceListingLinks {
}
export declare function dataOciMarketplaceListingLinksToTerraform(struct?: DataOciMarketplaceListingLinks): any;
export declare function dataOciMarketplaceListingLinksToHclTerraform(struct?: DataOciMarketplaceListingLinks): any;
export declare class DataOciMarketplaceListingLinksOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): DataOciMarketplaceListingLinks | undefined;
    set internalValue(value: DataOciMarketplaceListingLinks | undefined);
    get href(): string;
    get rel(): string;
}
export declare class DataOciMarketplaceListingLinksList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): DataOciMarketplaceListingLinksOutputReference;
}
export interface DataOciMarketplaceListingPublisherLinks {
}
export declare function dataOciMarketplaceListingPublisherLinksToTerraform(struct?: DataOciMarketplaceListingPublisherLinks): any;
export declare function dataOciMarketplaceListingPublisherLinksToHclTerraform(struct?: DataOciMarketplaceListingPublisherLinks): any;
export declare class DataOciMarketplaceListingPublisherLinksOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): DataOciMarketplaceListingPublisherLinks | undefined;
    set internalValue(value: DataOciMarketplaceListingPublisherLinks | undefined);
    get href(): string;
    get rel(): string;
}
export declare class DataOciMarketplaceListingPublisherLinksList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): DataOciMarketplaceListingPublisherLinksOutputReference;
}
export interface DataOciMarketplaceListingPublisherLogo {
}
export declare function dataOciMarketplaceListingPublisherLogoToTerraform(struct?: DataOciMarketplaceListingPublisherLogo): any;
export declare function dataOciMarketplaceListingPublisherLogoToHclTerraform(struct?: DataOciMarketplaceListingPublisherLogo): any;
export declare class DataOciMarketplaceListingPublisherLogoOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): DataOciMarketplaceListingPublisherLogo | undefined;
    set internalValue(value: DataOciMarketplaceListingPublisherLogo | undefined);
    get contentUrl(): string;
    get fileExtension(): string;
    get mimeType(): string;
    get name(): string;
}
export declare class DataOciMarketplaceListingPublisherLogoList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): DataOciMarketplaceListingPublisherLogoOutputReference;
}
export interface DataOciMarketplaceListingPublisher {
}
export declare function dataOciMarketplaceListingPublisherToTerraform(struct?: DataOciMarketplaceListingPublisher): any;
export declare function dataOciMarketplaceListingPublisherToHclTerraform(struct?: DataOciMarketplaceListingPublisher): any;
export declare class DataOciMarketplaceListingPublisherOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): DataOciMarketplaceListingPublisher | undefined;
    set internalValue(value: DataOciMarketplaceListingPublisher | undefined);
    get contactEmail(): string;
    get contactPhone(): string;
    get description(): string;
    get hqAddress(): string;
    get id(): string;
    private _links;
    get links(): DataOciMarketplaceListingPublisherLinksList;
    private _logo;
    get logo(): DataOciMarketplaceListingPublisherLogoList;
    get name(): string;
    get websiteUrl(): string;
    get yearFounded(): string;
}
export declare class DataOciMarketplaceListingPublisherList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): DataOciMarketplaceListingPublisherOutputReference;
}
export interface DataOciMarketplaceListingRegionsCountries {
}
export declare function dataOciMarketplaceListingRegionsCountriesToTerraform(struct?: DataOciMarketplaceListingRegionsCountries): any;
export declare function dataOciMarketplaceListingRegionsCountriesToHclTerraform(struct?: DataOciMarketplaceListingRegionsCountries): any;
export declare class DataOciMarketplaceListingRegionsCountriesOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): DataOciMarketplaceListingRegionsCountries | undefined;
    set internalValue(value: DataOciMarketplaceListingRegionsCountries | undefined);
    get code(): string;
    get name(): string;
}
export declare class DataOciMarketplaceListingRegionsCountriesList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): DataOciMarketplaceListingRegionsCountriesOutputReference;
}
export interface DataOciMarketplaceListingRegions {
}
export declare function dataOciMarketplaceListingRegionsToTerraform(struct?: DataOciMarketplaceListingRegions): any;
export declare function dataOciMarketplaceListingRegionsToHclTerraform(struct?: DataOciMarketplaceListingRegions): any;
export declare class DataOciMarketplaceListingRegionsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): DataOciMarketplaceListingRegions | undefined;
    set internalValue(value: DataOciMarketplaceListingRegions | undefined);
    get code(): string;
    private _countries;
    get countries(): DataOciMarketplaceListingRegionsCountriesList;
    get name(): string;
}
export declare class DataOciMarketplaceListingRegionsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): DataOciMarketplaceListingRegionsOutputReference;
}
export interface DataOciMarketplaceListingScreenshots {
}
export declare function dataOciMarketplaceListingScreenshotsToTerraform(struct?: DataOciMarketplaceListingScreenshots): any;
export declare function dataOciMarketplaceListingScreenshotsToHclTerraform(struct?: DataOciMarketplaceListingScreenshots): any;
export declare class DataOciMarketplaceListingScreenshotsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): DataOciMarketplaceListingScreenshots | undefined;
    set internalValue(value: DataOciMarketplaceListingScreenshots | undefined);
    get contentUrl(): string;
    get description(): string;
    get fileExtension(): string;
    get mimeType(): string;
    get name(): string;
}
export declare class DataOciMarketplaceListingScreenshotsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): DataOciMarketplaceListingScreenshotsOutputReference;
}
export interface DataOciMarketplaceListingSupportContacts {
}
export declare function dataOciMarketplaceListingSupportContactsToTerraform(struct?: DataOciMarketplaceListingSupportContacts): any;
export declare function dataOciMarketplaceListingSupportContactsToHclTerraform(struct?: DataOciMarketplaceListingSupportContacts): any;
export declare class DataOciMarketplaceListingSupportContactsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): DataOciMarketplaceListingSupportContacts | undefined;
    set internalValue(value: DataOciMarketplaceListingSupportContacts | undefined);
    get email(): string;
    get name(): string;
    get phone(): string;
    get subject(): string;
}
export declare class DataOciMarketplaceListingSupportContactsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): DataOciMarketplaceListingSupportContactsOutputReference;
}
export interface DataOciMarketplaceListingSupportLinks {
}
export declare function dataOciMarketplaceListingSupportLinksToTerraform(struct?: DataOciMarketplaceListingSupportLinks): any;
export declare function dataOciMarketplaceListingSupportLinksToHclTerraform(struct?: DataOciMarketplaceListingSupportLinks): any;
export declare class DataOciMarketplaceListingSupportLinksOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): DataOciMarketplaceListingSupportLinks | undefined;
    set internalValue(value: DataOciMarketplaceListingSupportLinks | undefined);
    get name(): string;
    get url(): string;
}
export declare class DataOciMarketplaceListingSupportLinksList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): DataOciMarketplaceListingSupportLinksOutputReference;
}
export interface DataOciMarketplaceListingSupportedOperatingSystems {
}
export declare function dataOciMarketplaceListingSupportedOperatingSystemsToTerraform(struct?: DataOciMarketplaceListingSupportedOperatingSystems): any;
export declare function dataOciMarketplaceListingSupportedOperatingSystemsToHclTerraform(struct?: DataOciMarketplaceListingSupportedOperatingSystems): any;
export declare class DataOciMarketplaceListingSupportedOperatingSystemsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): DataOciMarketplaceListingSupportedOperatingSystems | undefined;
    set internalValue(value: DataOciMarketplaceListingSupportedOperatingSystems | undefined);
    get name(): string;
}
export declare class DataOciMarketplaceListingSupportedOperatingSystemsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): DataOciMarketplaceListingSupportedOperatingSystemsOutputReference;
}
export interface DataOciMarketplaceListingVideos {
}
export declare function dataOciMarketplaceListingVideosToTerraform(struct?: DataOciMarketplaceListingVideos): any;
export declare function dataOciMarketplaceListingVideosToHclTerraform(struct?: DataOciMarketplaceListingVideos): any;
export declare class DataOciMarketplaceListingVideosOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): DataOciMarketplaceListingVideos | undefined;
    set internalValue(value: DataOciMarketplaceListingVideos | undefined);
    get name(): string;
    get url(): string;
}
export declare class DataOciMarketplaceListingVideosList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): DataOciMarketplaceListingVideosOutputReference;
}
/**
* Represents a {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/marketplace_listing oci_marketplace_listing}
*/
export declare class DataOciMarketplaceListing extends cdktf.TerraformDataSource {
    static readonly tfResourceType = "oci_marketplace_listing";
    /**
    * Generates CDKTF code for importing a DataOciMarketplaceListing resource upon running "cdktf plan <stack-name>"
    * @param scope The scope in which to define this construct
    * @param importToId The construct id used in the generated config for the DataOciMarketplaceListing to import
    * @param importFromId The id of the existing DataOciMarketplaceListing that should be imported. Refer to the {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/marketplace_listing#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the DataOciMarketplaceListing to import is found
    */
    static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): cdktf.ImportableResource;
    /**
    * Create a new {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/marketplace_listing oci_marketplace_listing} Data Source
    *
    * @param scope The scope in which to define this construct
    * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
    * @param options DataOciMarketplaceListingConfig
    */
    constructor(scope: Construct, id: string, config: DataOciMarketplaceListingConfig);
    private _banner;
    get banner(): DataOciMarketplaceListingBannerList;
    get categories(): string[];
    private _compartmentId?;
    get compartmentId(): string;
    set compartmentId(value: string);
    resetCompartmentId(): void;
    get compartmentIdInput(): string | undefined;
    get compatibleArchitectures(): string[];
    get defaultPackageVersion(): string;
    private _documentationLinks;
    get documentationLinks(): DataOciMarketplaceListingDocumentationLinksList;
    private _icon;
    get icon(): DataOciMarketplaceListingIconList;
    private _id?;
    get id(): string;
    set id(value: string);
    resetId(): void;
    get idInput(): string | undefined;
    get isFeatured(): cdktf.IResolvable;
    get keywords(): string;
    private _languages;
    get languages(): DataOciMarketplaceListingLanguagesList;
    get licenseModelDescription(): string;
    private _links;
    get links(): DataOciMarketplaceListingLinksList;
    private _listingId?;
    get listingId(): string;
    set listingId(value: string);
    get listingIdInput(): string | undefined;
    get listingType(): string;
    get longDescription(): string;
    get name(): string;
    get packageType(): string;
    private _publisher;
    get publisher(): DataOciMarketplaceListingPublisherList;
    private _regions;
    get regions(): DataOciMarketplaceListingRegionsList;
    get releaseNotes(): string;
    private _screenshots;
    get screenshots(): DataOciMarketplaceListingScreenshotsList;
    get shortDescription(): string;
    private _supportContacts;
    get supportContacts(): DataOciMarketplaceListingSupportContactsList;
    private _supportLinks;
    get supportLinks(): DataOciMarketplaceListingSupportLinksList;
    private _supportedOperatingSystems;
    get supportedOperatingSystems(): DataOciMarketplaceListingSupportedOperatingSystemsList;
    get systemRequirements(): string;
    get tagline(): string;
    get timeReleased(): string;
    get usageInformation(): string;
    get version(): string;
    private _videos;
    get videos(): DataOciMarketplaceListingVideosList;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}
