import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * Use this data source to query detailed information of cr registries
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as volcengine from "@pulumi/volcengine";
 *
 * const foo = volcengine.cr.getRegistries({
 *     statuses: [{
 *         condition: "Ok",
 *         phase: "Running",
 *     }],
 * });
 * ```
 */
export declare function getRegistries(args?: GetRegistriesArgs, opts?: pulumi.InvokeOptions): Promise<GetRegistriesResult>;
/**
 * A collection of arguments for invoking getRegistries.
 */
export interface GetRegistriesArgs {
    /**
     * The list of registry names to query.
     */
    names?: string[];
    /**
     * File name where to save data source results.
     */
    outputFile?: string;
    /**
     * The list of project names to query.
     */
    projects?: string[];
    /**
     * The tags of cr registry.
     */
    resourceTags?: inputs.cr.GetRegistriesResourceTag[];
    /**
     * The list of registry statuses.
     */
    statuses?: inputs.cr.GetRegistriesStatus[];
    /**
     * The list of registry types to query.
     */
    types?: string[];
}
/**
 * A collection of values returned by getRegistries.
 */
export interface GetRegistriesResult {
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly names?: string[];
    readonly outputFile?: string;
    readonly projects?: string[];
    /**
     * The collection of registry query.
     */
    readonly registries: outputs.cr.GetRegistriesRegistry[];
    /**
     * Tags.
     */
    readonly resourceTags?: outputs.cr.GetRegistriesResourceTag[];
    readonly statuses?: outputs.cr.GetRegistriesStatus[];
    /**
     * The total count of registry query.
     */
    readonly totalCount: number;
    readonly types?: string[];
}
/**
 * Use this data source to query detailed information of cr registries
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as volcengine from "@pulumi/volcengine";
 *
 * const foo = volcengine.cr.getRegistries({
 *     statuses: [{
 *         condition: "Ok",
 *         phase: "Running",
 *     }],
 * });
 * ```
 */
export declare function getRegistriesOutput(args?: GetRegistriesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetRegistriesResult>;
/**
 * A collection of arguments for invoking getRegistries.
 */
export interface GetRegistriesOutputArgs {
    /**
     * The list of registry names to query.
     */
    names?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * File name where to save data source results.
     */
    outputFile?: pulumi.Input<string>;
    /**
     * The list of project names to query.
     */
    projects?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * The tags of cr registry.
     */
    resourceTags?: pulumi.Input<pulumi.Input<inputs.cr.GetRegistriesResourceTagArgs>[]>;
    /**
     * The list of registry statuses.
     */
    statuses?: pulumi.Input<pulumi.Input<inputs.cr.GetRegistriesStatusArgs>[]>;
    /**
     * The list of registry types to query.
     */
    types?: pulumi.Input<pulumi.Input<string>[]>;
}
