import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * This data source provides details about a specific Catalog resource in Oracle Cloud Infrastructure Data Catalog service.
 *
 * Gets a data catalog by identifier.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testCatalog = oci.datacatalog.getCatalog({
 *     catalogId: testCatalogOciDatacatalogCatalog.id,
 * });
 * ```
 */
export declare function getCatalog(args: GetCatalogArgs, opts?: pulumi.InvokeOptions): Promise<GetCatalogResult>;
/**
 * A collection of arguments for invoking getCatalog.
 */
export interface GetCatalogArgs {
    /**
     * Unique catalog identifier.
     */
    catalogId: string;
}
/**
 * A collection of values returned by getCatalog.
 */
export interface GetCatalogResult {
    /**
     * The list of private reverse connection endpoints attached to the catalog
     */
    readonly attachedCatalogPrivateEndpoints: string[];
    readonly catalogId: string;
    /**
     * Compartment identifier.
     */
    readonly compartmentId: string;
    /**
     * Usage of predefined tag keys. These predefined keys are scoped to namespaces. Example: `{"foo-namespace.bar-key": "value"}`
     */
    readonly definedTags: {
        [key: string]: string;
    };
    /**
     * Data catalog identifier, which can be renamed.
     */
    readonly displayName: string;
    /**
     * Simple key-value pair that is applied without any predefined name, type, or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}`
     */
    readonly freeformTags: {
        [key: string]: string;
    };
    /**
     * Unique identifier that is immutable on creation.
     */
    readonly id: string;
    /**
     * An message describing the current state in more detail. For example, it can be used to provide actionable information for a resource in 'Failed' state.
     */
    readonly lifecycleDetails: string;
    /**
     * Locks associated with this resource.
     */
    readonly locks: outputs.DataCatalog.GetCatalogLock[];
    /**
     * The number of data objects added to the data catalog. Please see the data catalog documentation for further information on how this is calculated.
     */
    readonly numberOfObjects: number;
    /**
     * The REST front endpoint URL to the data catalog instance.
     */
    readonly serviceApiUrl: string;
    /**
     * The console front endpoint URL to the data catalog instance.
     */
    readonly serviceConsoleUrl: string;
    /**
     * The current state of the data catalog resource.
     */
    readonly state: string;
    /**
     * System tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). System tags can be viewed by users, but can only be created by the system.  Example: `{"orcl-cloud.free-tier-retained": "true"}`
     */
    readonly systemTags: {
        [key: string]: string;
    };
    /**
     * The time the data catalog was created. An [RFC3339](https://tools.ietf.org/html/rfc3339) formatted datetime string.
     */
    readonly timeCreated: string;
    /**
     * The time the data catalog was updated. An [RFC3339](https://tools.ietf.org/html/rfc3339) formatted datetime string.
     */
    readonly timeUpdated: string;
}
/**
 * This data source provides details about a specific Catalog resource in Oracle Cloud Infrastructure Data Catalog service.
 *
 * Gets a data catalog by identifier.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testCatalog = oci.datacatalog.getCatalog({
 *     catalogId: testCatalogOciDatacatalogCatalog.id,
 * });
 * ```
 */
export declare function getCatalogOutput(args: GetCatalogOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetCatalogResult>;
/**
 * A collection of arguments for invoking getCatalog.
 */
export interface GetCatalogOutputArgs {
    /**
     * Unique catalog identifier.
     */
    catalogId: pulumi.Input<string>;
}
//# sourceMappingURL=getCatalog.d.ts.map