import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * Fabric V4 API compatible data resource that allow user to fetch Service Profile by name filter criteria
 *
 * Additional documentation:
 * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/Fabric/IMPLEMENTATION/fabric-Sprofiles-implement.htm
 * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#service-profiles
 */
export declare function getServiceProfiles(args: GetServiceProfilesArgs, opts?: pulumi.InvokeOptions): Promise<GetServiceProfilesResult>;
/**
 * A collection of arguments for invoking getServiceProfiles.
 */
export interface GetServiceProfilesArgs {
    /**
     * Optional boolean flag to indicate if the filters will be AND'd together. Defaults to false
     */
    andFilters?: boolean;
    /**
     * Filters for the Data Source Search Request (If andFilters is not set to true you cannot provide more than one filter block)
     */
    filter: inputs.fabric.GetServiceProfilesFilter;
    /**
     * Pagination details for the Data Source Search Request
     */
    pagination?: inputs.fabric.GetServiceProfilesPagination;
    /**
     * Filters for the Data Source Search Request
     */
    sort?: inputs.fabric.GetServiceProfilesSort[];
    /**
     * flips view between buyer and seller representation. Available values : aSide, zSide. Default value : aSide
     */
    viewPoint?: string;
}
/**
 * A collection of values returned by getServiceProfiles.
 */
export interface GetServiceProfilesResult {
    /**
     * Optional boolean flag to indicate if the filters will be AND'd together. Defaults to false
     */
    readonly andFilters?: boolean;
    /**
     * List of Service Profiles
     */
    readonly data: outputs.fabric.GetServiceProfilesDatum[];
    /**
     * Filters for the Data Source Search Request (If andFilters is not set to true you cannot provide more than one filter block)
     */
    readonly filter: outputs.fabric.GetServiceProfilesFilter;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * Pagination details for the Data Source Search Request
     */
    readonly pagination?: outputs.fabric.GetServiceProfilesPagination;
    /**
     * Filters for the Data Source Search Request
     */
    readonly sort?: outputs.fabric.GetServiceProfilesSort[];
    /**
     * flips view between buyer and seller representation. Available values : aSide, zSide. Default value : aSide
     */
    readonly viewPoint?: string;
}
/**
 * Fabric V4 API compatible data resource that allow user to fetch Service Profile by name filter criteria
 *
 * Additional documentation:
 * * Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/Fabric/IMPLEMENTATION/fabric-Sprofiles-implement.htm
 * * API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#service-profiles
 */
export declare function getServiceProfilesOutput(args: GetServiceProfilesOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetServiceProfilesResult>;
/**
 * A collection of arguments for invoking getServiceProfiles.
 */
export interface GetServiceProfilesOutputArgs {
    /**
     * Optional boolean flag to indicate if the filters will be AND'd together. Defaults to false
     */
    andFilters?: pulumi.Input<boolean>;
    /**
     * Filters for the Data Source Search Request (If andFilters is not set to true you cannot provide more than one filter block)
     */
    filter: pulumi.Input<inputs.fabric.GetServiceProfilesFilterArgs>;
    /**
     * Pagination details for the Data Source Search Request
     */
    pagination?: pulumi.Input<inputs.fabric.GetServiceProfilesPaginationArgs>;
    /**
     * Filters for the Data Source Search Request
     */
    sort?: pulumi.Input<pulumi.Input<inputs.fabric.GetServiceProfilesSortArgs>[]>;
    /**
     * flips view between buyer and seller representation. Available values : aSide, zSide. Default value : aSide
     */
    viewPoint?: pulumi.Input<string>;
}
