import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Use this data source to query detailed information of vmp rule files
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as volcengine from "@pulumi/volcengine";
 * import * as volcengine from "@volcengine/pulumi";
 *
 * const fooWorkspace = new volcengine.vmp.Workspace("fooWorkspace", {
 *     instanceTypeId: "vmp.standard.15d",
 *     deleteProtectionEnabled: false,
 *     description: "acc-test-1",
 *     username: "admin123",
 *     password: "*********",
 * });
 * const fooRuleFile = new volcengine.vmp.RuleFile("fooRuleFile", {
 *     workspaceId: fooWorkspace.id,
 *     description: "acc-test-1",
 *     content: `groups:
 *     - interval: 10s
 *       name: recording_rules
 *       rules:
 *         - expr: sum(irate(container_cpu_usage_seconds_total{image!=""}[5m])) by (pod) *100
 *           labels:
 *             team: operations
 *           record: pod:cpu:useage
 * `,
 * });
 * const fooRuleFiles = volcengine.vmp.getRuleFilesOutput({
 *     ids: [fooRuleFile.ruleFileId],
 *     workspaceId: fooWorkspace.id,
 * });
 * ```
 */
export declare function getRuleFiles(args: GetRuleFilesArgs, opts?: pulumi.InvokeOptions): Promise<GetRuleFilesResult>;
/**
 * A collection of arguments for invoking getRuleFiles.
 */
export interface GetRuleFilesArgs {
    /**
     * A list of Rule File IDs.
     */
    ids?: string[];
    /**
     * The name of rule file.
     */
    name?: string;
    /**
     * File name where to save data source results.
     */
    outputFile?: string;
    /**
     * The status of rule file.
     */
    status?: string;
    /**
     * The id of workspace.
     */
    workspaceId: string;
}
/**
 * A collection of values returned by getRuleFiles.
 */
export interface GetRuleFilesResult {
    /**
     * The collection of query.
     */
    readonly files: outputs.vmp.GetRuleFilesFile[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly ids?: string[];
    /**
     * The name of rule file.
     */
    readonly name?: string;
    readonly outputFile?: string;
    /**
     * The status of rule file.
     */
    readonly status?: string;
    /**
     * The total count of query.
     */
    readonly totalCount: number;
    readonly workspaceId: string;
}
/**
 * Use this data source to query detailed information of vmp rule files
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as volcengine from "@pulumi/volcengine";
 * import * as volcengine from "@volcengine/pulumi";
 *
 * const fooWorkspace = new volcengine.vmp.Workspace("fooWorkspace", {
 *     instanceTypeId: "vmp.standard.15d",
 *     deleteProtectionEnabled: false,
 *     description: "acc-test-1",
 *     username: "admin123",
 *     password: "*********",
 * });
 * const fooRuleFile = new volcengine.vmp.RuleFile("fooRuleFile", {
 *     workspaceId: fooWorkspace.id,
 *     description: "acc-test-1",
 *     content: `groups:
 *     - interval: 10s
 *       name: recording_rules
 *       rules:
 *         - expr: sum(irate(container_cpu_usage_seconds_total{image!=""}[5m])) by (pod) *100
 *           labels:
 *             team: operations
 *           record: pod:cpu:useage
 * `,
 * });
 * const fooRuleFiles = volcengine.vmp.getRuleFilesOutput({
 *     ids: [fooRuleFile.ruleFileId],
 *     workspaceId: fooWorkspace.id,
 * });
 * ```
 */
export declare function getRuleFilesOutput(args: GetRuleFilesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetRuleFilesResult>;
/**
 * A collection of arguments for invoking getRuleFiles.
 */
export interface GetRuleFilesOutputArgs {
    /**
     * A list of Rule File IDs.
     */
    ids?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * The name of rule file.
     */
    name?: pulumi.Input<string>;
    /**
     * File name where to save data source results.
     */
    outputFile?: pulumi.Input<string>;
    /**
     * The status of rule file.
     */
    status?: pulumi.Input<string>;
    /**
     * The id of workspace.
     */
    workspaceId: pulumi.Input<string>;
}
