import { PagedAsyncIterableIterator } from "@azure/core-paging";
import { NspProfile, NetworkSecurityPerimeterProfilesListOptionalParams, NetworkSecurityPerimeterProfilesGetOptionalParams, NetworkSecurityPerimeterProfilesGetResponse, NetworkSecurityPerimeterProfilesCreateOrUpdateOptionalParams, NetworkSecurityPerimeterProfilesCreateOrUpdateResponse, NetworkSecurityPerimeterProfilesDeleteOptionalParams } from "../models/index.js";
/** Interface representing a NetworkSecurityPerimeterProfiles. */
export interface NetworkSecurityPerimeterProfiles {
    /**
     * Lists the NSP profiles in the specified network security perimeter.
     * @param resourceGroupName The name of the resource group.
     * @param networkSecurityPerimeterName The name of the network security perimeter.
     * @param options The options parameters.
     */
    list(resourceGroupName: string, networkSecurityPerimeterName: string, options?: NetworkSecurityPerimeterProfilesListOptionalParams): PagedAsyncIterableIterator<NspProfile>;
    /**
     * Gets the specified NSP profile.
     * @param resourceGroupName The name of the resource group.
     * @param networkSecurityPerimeterName The name of the network security perimeter.
     * @param profileName The name of the NSP profile.
     * @param options The options parameters.
     */
    get(resourceGroupName: string, networkSecurityPerimeterName: string, profileName: string, options?: NetworkSecurityPerimeterProfilesGetOptionalParams): Promise<NetworkSecurityPerimeterProfilesGetResponse>;
    /**
     * Creates or updates a network profile.
     * @param resourceGroupName The name of the resource group.
     * @param networkSecurityPerimeterName The name of the network security perimeter.
     * @param profileName The name of the NSP profile.
     * @param parameters Parameters that hold the NspProfile resource to be created/updated.
     * @param options The options parameters.
     */
    createOrUpdate(resourceGroupName: string, networkSecurityPerimeterName: string, profileName: string, parameters: NspProfile, options?: NetworkSecurityPerimeterProfilesCreateOrUpdateOptionalParams): Promise<NetworkSecurityPerimeterProfilesCreateOrUpdateResponse>;
    /**
     * Deletes an NSP profile.
     * @param resourceGroupName The name of the resource group.
     * @param networkSecurityPerimeterName The name of the network security perimeter.
     * @param profileName The name of the NSP profile.
     * @param options The options parameters.
     */
    delete(resourceGroupName: string, networkSecurityPerimeterName: string, profileName: string, options?: NetworkSecurityPerimeterProfilesDeleteOptionalParams): Promise<void>;
}
//# sourceMappingURL=networkSecurityPerimeterProfiles.d.ts.map