import * as pulumi from "@pulumi/pulumi"; import * as outputs from "../types/output"; /** * Datasource for listing Harness AutoStopping rules. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as harness from "@pulumi/harness"; * * export = async () => { * const all = await harness.autostopping.getRules({}); * const byInstanceKind = await harness.autostopping.getRules({ * kind: "instance", * }); * const byK8sKind = await harness.autostopping.getRules({ * kind: "k8s", * }); * const byNamePrefix = await harness.autostopping.getRules({ * name: "myname-.*", * }); * const byNameRegex = await harness.autostopping.getRules({ * name: "^(app|svc).*", * }); * return { * allRules: all.rules, * allRuleIds: .map(r => (r.id)), * byInstanceKind: byInstanceKind.rules, * byInstanceKindIds: .map(r => (r.id)), * k8sRules: byK8sKind.rules, * k8sRuleIds: .map(r => (r.id)), * rulesByNamePrefix: byNamePrefix.rules, * rulesByNamePrefixIds: .map(r => (r.id)), * rulesByNameRegex: byNameRegex.rules, * rulesByNameRegexIds: .map(r => (r.id)), * }; * } * ``` */ export declare function getRules(args?: GetRulesArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getRules. */ export interface GetRulesArgs { /** * Return rules matching provided kind. */ kind?: string; /** * Filter by rule name using a regular expression. e.g. "^myname-.*" or "^(app|svc).*". */ name?: string; } /** * A collection of values returned by getRules. */ export interface GetRulesResult { /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; /** * Return rules matching provided kind. */ readonly kind?: string; /** * Filter by rule name using a regular expression. e.g. "^myname-.*" or "^(app|svc).*". */ readonly name?: string; /** * List of AutoStopping rules. */ readonly rules: outputs.autostopping.GetRulesRule[]; } /** * Datasource for listing Harness AutoStopping rules. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as harness from "@pulumi/harness"; * * export = async () => { * const all = await harness.autostopping.getRules({}); * const byInstanceKind = await harness.autostopping.getRules({ * kind: "instance", * }); * const byK8sKind = await harness.autostopping.getRules({ * kind: "k8s", * }); * const byNamePrefix = await harness.autostopping.getRules({ * name: "myname-.*", * }); * const byNameRegex = await harness.autostopping.getRules({ * name: "^(app|svc).*", * }); * return { * allRules: all.rules, * allRuleIds: .map(r => (r.id)), * byInstanceKind: byInstanceKind.rules, * byInstanceKindIds: .map(r => (r.id)), * k8sRules: byK8sKind.rules, * k8sRuleIds: .map(r => (r.id)), * rulesByNamePrefix: byNamePrefix.rules, * rulesByNamePrefixIds: .map(r => (r.id)), * rulesByNameRegex: byNameRegex.rules, * rulesByNameRegexIds: .map(r => (r.id)), * }; * } * ``` */ export declare function getRulesOutput(args?: GetRulesOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getRules. */ export interface GetRulesOutputArgs { /** * Return rules matching provided kind. */ kind?: pulumi.Input; /** * Filter by rule name using a regular expression. e.g. "^myname-.*" or "^(app|svc).*". */ name?: pulumi.Input; } //# sourceMappingURL=getRules.d.ts.map