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 Indexes in Oracle Cloud Infrastructure NoSQL Database service.
 *
 * Get a list of indexes on a table.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testIndexes = oci.nosql.getIndexes({
 *     tableNameOrId: testTableNameOr.id,
 *     compartmentId: compartmentId,
 *     name: indexName,
 *     state: indexState,
 * });
 * ```
 */
export declare function getIndexes(args: GetIndexesArgs, opts?: pulumi.InvokeOptions): Promise<GetIndexesResult>;
/**
 * A collection of arguments for invoking getIndexes.
 */
export interface GetIndexesArgs {
    /**
     * The ID of a table's compartment. When a table is identified by name, the compartmentId is often needed to provide context for interpreting the name.
     */
    compartmentId?: string;
    filters?: inputs.Nosql.GetIndexesFilter[];
    /**
     * A shell-globbing-style (*?[]) filter for names.
     */
    name?: string;
    /**
     * Filter list by the lifecycle state of the item.
     */
    state?: string;
    /**
     * A table name within the compartment, or a table OCID.
     */
    tableNameOrId: string;
}
/**
 * A collection of values returned by getIndexes.
 */
export interface GetIndexesResult {
    /**
     * Compartment Identifier.
     */
    readonly compartmentId?: string;
    readonly filters?: outputs.Nosql.GetIndexesFilter[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * The list of index_collection.
     */
    readonly indexCollections: outputs.Nosql.GetIndexesIndexCollection[];
    /**
     * Index name.
     */
    readonly name?: string;
    /**
     * The state of an index.
     */
    readonly state?: string;
    readonly tableNameOrId: string;
}
/**
 * This data source provides the list of Indexes in Oracle Cloud Infrastructure NoSQL Database service.
 *
 * Get a list of indexes on a table.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testIndexes = oci.nosql.getIndexes({
 *     tableNameOrId: testTableNameOr.id,
 *     compartmentId: compartmentId,
 *     name: indexName,
 *     state: indexState,
 * });
 * ```
 */
export declare function getIndexesOutput(args: GetIndexesOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetIndexesResult>;
/**
 * A collection of arguments for invoking getIndexes.
 */
export interface GetIndexesOutputArgs {
    /**
     * The ID of a table's compartment. When a table is identified by name, the compartmentId is often needed to provide context for interpreting the name.
     */
    compartmentId?: pulumi.Input<string | undefined>;
    filters?: pulumi.Input<pulumi.Input<inputs.Nosql.GetIndexesFilterArgs>[] | undefined>;
    /**
     * A shell-globbing-style (*?[]) filter for names.
     */
    name?: pulumi.Input<string | undefined>;
    /**
     * Filter list by the lifecycle state of the item.
     */
    state?: pulumi.Input<string | undefined>;
    /**
     * A table name within the compartment, or a table OCID.
     */
    tableNameOrId: pulumi.Input<string>;
}
//# sourceMappingURL=getIndexes.d.ts.map