import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set
 *
 * Additional Documentation:
 * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm
 * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as equinix from "@equinix-labs/pulumi-equinix";
 *
 * const rfRules = equinix.fabric.getRouteFilterRules({
 *     routeFilterId: "<route_filter_policy_id",
 *     limit: 100,
 *     offset: 5,
 * });
 * export const firstRouteFilterRuleName = rfRules.then(rfRules => rfRules.datas?.[0]?.name);
 * export const firstRouteFilterRuleDescription = rfRules.then(rfRules => rfRules.datas?.[0]?.description);
 * export const firstRouteFilterRulePrefix = rfRules.then(rfRules => rfRules.datas?.[0]?.prefix);
 * export const firstRouteFilterRulePrefixMatch = rfRules.then(rfRules => rfRules.datas?.[0]?.prefixMatch);
 * ```
 */
export declare function getRouteFilterRules(args: GetRouteFilterRulesArgs, opts?: pulumi.InvokeOptions): Promise<GetRouteFilterRulesResult>;
/**
 * A collection of arguments for invoking getRouteFilterRules.
 */
export interface GetRouteFilterRulesArgs {
    /**
     * Number of elements to be requested per page. Number must be between 1 and 100. Default is 20
     */
    limit?: number;
    /**
     * The page offset for the pagination request. Index of the first element. Default is 0.
     */
    offset?: number;
    /**
     * UUID of the Route Filter Policy the rule is attached to
     */
    routeFilterId: string;
}
/**
 * A collection of values returned by getRouteFilterRules.
 */
export interface GetRouteFilterRulesResult {
    /**
     * The list of Rules attached to the given Route Filter Policy UUID
     */
    readonly datas: outputs.fabric.GetRouteFilterRulesData[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * Number of elements to be requested per page. Number must be between 1 and 100. Default is 20
     */
    readonly limit?: number;
    /**
     * The page offset for the pagination request. Index of the first element. Default is 0.
     */
    readonly offset?: number;
    /**
     * Pagination details for the Data Source Search Request
     */
    readonly paginations: outputs.fabric.GetRouteFilterRulesPagination[];
    /**
     * UUID of the Route Filter Policy the rule is attached to
     */
    readonly routeFilterId: string;
}
/**
 * Fabric V4 API compatible data resource that allow user to fetch route filter for a given search data set
 *
 * Additional Documentation:
 * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-route-filters.htm
 * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#route-filter-rules
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as equinix from "@equinix-labs/pulumi-equinix";
 *
 * const rfRules = equinix.fabric.getRouteFilterRules({
 *     routeFilterId: "<route_filter_policy_id",
 *     limit: 100,
 *     offset: 5,
 * });
 * export const firstRouteFilterRuleName = rfRules.then(rfRules => rfRules.datas?.[0]?.name);
 * export const firstRouteFilterRuleDescription = rfRules.then(rfRules => rfRules.datas?.[0]?.description);
 * export const firstRouteFilterRulePrefix = rfRules.then(rfRules => rfRules.datas?.[0]?.prefix);
 * export const firstRouteFilterRulePrefixMatch = rfRules.then(rfRules => rfRules.datas?.[0]?.prefixMatch);
 * ```
 */
export declare function getRouteFilterRulesOutput(args: GetRouteFilterRulesOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetRouteFilterRulesResult>;
/**
 * A collection of arguments for invoking getRouteFilterRules.
 */
export interface GetRouteFilterRulesOutputArgs {
    /**
     * Number of elements to be requested per page. Number must be between 1 and 100. Default is 20
     */
    limit?: pulumi.Input<number>;
    /**
     * The page offset for the pagination request. Index of the first element. Default is 0.
     */
    offset?: pulumi.Input<number>;
    /**
     * UUID of the Route Filter Policy the rule is attached to
     */
    routeFilterId: pulumi.Input<string>;
}
