import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
/**
 * Retrieves details about databricks.Schema that was created by Pulumi or manually.
 * A schema can be identified by its two-level (fully qualified) name (in the form of: `catalogName`.`schemaName`) as input. This can be retrieved programmatically using databricks.getSchemas data source.
 *
 * ## Example Usage
 *
 * * Retrieve details of all schemas in in a _sandbox_ databricks_catalog:
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as databricks from "@pulumi/databricks";
 *
 * const all = databricks.getSchemas({
 *     catalogName: "sandbox",
 * });
 * const _this = all.then(all => .reduce((__obj, [__key, __value]) => ({ ...__obj, [__key]: databricks.getSchema({
 *     name: __value,
 * }) })));
 * ```
 *
 * * Search for a specific schema by its fully qualified name:
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as databricks from "@pulumi/databricks";
 *
 * const _this = databricks.getSchema({
 *     name: "catalog.schema",
 * });
 * ```
 *
 * ## Related Resources
 *
 * The following resources are used in the same context:
 *
 * * databricks.Schema to manage schemas within Unity Catalog.
 * * databricks.Catalog to manage catalogs within Unity Catalog.
 */
export declare function getSchema(args: GetSchemaArgs, opts?: pulumi.InvokeOptions): Promise<GetSchemaResult>;
/**
 * A collection of arguments for invoking getSchema.
 */
export interface GetSchemaArgs {
    /**
     * ID of this Unity Catalog Schema in form of `<catalog>.<schema>`.
     */
    id?: string;
    /**
     * a fully qualified name of databricks_schema: *`catalog`.`schema`*
     */
    name: string;
    /**
     * `SchemaInfo` object for a Unity Catalog schema. This contains the following attributes:
     */
    schemaInfo?: inputs.GetSchemaSchemaInfo;
}
/**
 * A collection of values returned by getSchema.
 */
export interface GetSchemaResult {
    /**
     * ID of this Unity Catalog Schema in form of `<catalog>.<schema>`.
     */
    readonly id: string;
    /**
     * Name of schema, relative to parent catalog.
     */
    readonly name: string;
    /**
     * `SchemaInfo` object for a Unity Catalog schema. This contains the following attributes:
     */
    readonly schemaInfo: outputs.GetSchemaSchemaInfo;
}
/**
 * Retrieves details about databricks.Schema that was created by Pulumi or manually.
 * A schema can be identified by its two-level (fully qualified) name (in the form of: `catalogName`.`schemaName`) as input. This can be retrieved programmatically using databricks.getSchemas data source.
 *
 * ## Example Usage
 *
 * * Retrieve details of all schemas in in a _sandbox_ databricks_catalog:
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as databricks from "@pulumi/databricks";
 *
 * const all = databricks.getSchemas({
 *     catalogName: "sandbox",
 * });
 * const _this = all.then(all => .reduce((__obj, [__key, __value]) => ({ ...__obj, [__key]: databricks.getSchema({
 *     name: __value,
 * }) })));
 * ```
 *
 * * Search for a specific schema by its fully qualified name:
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as databricks from "@pulumi/databricks";
 *
 * const _this = databricks.getSchema({
 *     name: "catalog.schema",
 * });
 * ```
 *
 * ## Related Resources
 *
 * The following resources are used in the same context:
 *
 * * databricks.Schema to manage schemas within Unity Catalog.
 * * databricks.Catalog to manage catalogs within Unity Catalog.
 */
export declare function getSchemaOutput(args: GetSchemaOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetSchemaResult>;
/**
 * A collection of arguments for invoking getSchema.
 */
export interface GetSchemaOutputArgs {
    /**
     * ID of this Unity Catalog Schema in form of `<catalog>.<schema>`.
     */
    id?: pulumi.Input<string>;
    /**
     * a fully qualified name of databricks_schema: *`catalog`.`schema`*
     */
    name: pulumi.Input<string>;
    /**
     * `SchemaInfo` object for a Unity Catalog schema. This contains the following attributes:
     */
    schemaInfo?: pulumi.Input<inputs.GetSchemaSchemaInfoArgs>;
}
