import { PagedAsyncIterableIterator } from "@azure/core-paging";
import { SimplePollerLike, OperationState } from "@azure/core-lro";
import { GalleryInVMAccessControlProfile, GalleryInVMAccessControlProfilesListByGalleryOptionalParams, GalleryInVMAccessControlProfilesGetOptionalParams, GalleryInVMAccessControlProfilesGetResponse, GalleryInVMAccessControlProfilesCreateOrUpdateOptionalParams, GalleryInVMAccessControlProfilesCreateOrUpdateResponse, GalleryInVMAccessControlProfileUpdate, GalleryInVMAccessControlProfilesUpdateOptionalParams, GalleryInVMAccessControlProfilesUpdateResponse, GalleryInVMAccessControlProfilesDeleteOptionalParams, GalleryInVMAccessControlProfilesDeleteResponse } from "../models/index.js";
/** Interface representing a GalleryInVMAccessControlProfiles. */
export interface GalleryInVMAccessControlProfiles {
    /**
     * List gallery inVMAccessControlProfiles in a gallery.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param galleryName The name of the Shared Image Gallery.
     * @param options The options parameters.
     */
    listByGallery(resourceGroupName: string, galleryName: string, options?: GalleryInVMAccessControlProfilesListByGalleryOptionalParams): PagedAsyncIterableIterator<GalleryInVMAccessControlProfile>;
    /**
     * Retrieves information about a gallery inVMAccessControlProfile.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param galleryName The name of the Shared Image Gallery.
     * @param inVMAccessControlProfileName The name of the gallery inVMAccessControlProfile to be
     *                                     retrieved.
     * @param options The options parameters.
     */
    get(resourceGroupName: string, galleryName: string, inVMAccessControlProfileName: string, options?: GalleryInVMAccessControlProfilesGetOptionalParams): Promise<GalleryInVMAccessControlProfilesGetResponse>;
    /**
     * Create or update a gallery inVMAccessControlProfile.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param galleryName The name of the Shared Image Gallery.
     * @param inVMAccessControlProfileName The name of the gallery inVMAccessControlProfile to be
     *                                     retrieved.
     * @param galleryInVMAccessControlProfile Parameters supplied to the create or update gallery
     *                                        inVMAccessControlProfile operation.
     * @param options The options parameters.
     */
    beginCreateOrUpdate(resourceGroupName: string, galleryName: string, inVMAccessControlProfileName: string, galleryInVMAccessControlProfile: GalleryInVMAccessControlProfile, options?: GalleryInVMAccessControlProfilesCreateOrUpdateOptionalParams): Promise<SimplePollerLike<OperationState<GalleryInVMAccessControlProfilesCreateOrUpdateResponse>, GalleryInVMAccessControlProfilesCreateOrUpdateResponse>>;
    /**
     * Create or update a gallery inVMAccessControlProfile.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param galleryName The name of the Shared Image Gallery.
     * @param inVMAccessControlProfileName The name of the gallery inVMAccessControlProfile to be
     *                                     retrieved.
     * @param galleryInVMAccessControlProfile Parameters supplied to the create or update gallery
     *                                        inVMAccessControlProfile operation.
     * @param options The options parameters.
     */
    beginCreateOrUpdateAndWait(resourceGroupName: string, galleryName: string, inVMAccessControlProfileName: string, galleryInVMAccessControlProfile: GalleryInVMAccessControlProfile, options?: GalleryInVMAccessControlProfilesCreateOrUpdateOptionalParams): Promise<GalleryInVMAccessControlProfilesCreateOrUpdateResponse>;
    /**
     * Update a gallery inVMAccessControlProfile.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param galleryName The name of the Shared Image Gallery.
     * @param inVMAccessControlProfileName The name of the gallery inVMAccessControlProfile to be
     *                                     retrieved.
     * @param galleryInVMAccessControlProfile Parameters supplied to the update gallery
     *                                        inVMAccessControlProfile operation.
     * @param options The options parameters.
     */
    beginUpdate(resourceGroupName: string, galleryName: string, inVMAccessControlProfileName: string, galleryInVMAccessControlProfile: GalleryInVMAccessControlProfileUpdate, options?: GalleryInVMAccessControlProfilesUpdateOptionalParams): Promise<SimplePollerLike<OperationState<GalleryInVMAccessControlProfilesUpdateResponse>, GalleryInVMAccessControlProfilesUpdateResponse>>;
    /**
     * Update a gallery inVMAccessControlProfile.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param galleryName The name of the Shared Image Gallery.
     * @param inVMAccessControlProfileName The name of the gallery inVMAccessControlProfile to be
     *                                     retrieved.
     * @param galleryInVMAccessControlProfile Parameters supplied to the update gallery
     *                                        inVMAccessControlProfile operation.
     * @param options The options parameters.
     */
    beginUpdateAndWait(resourceGroupName: string, galleryName: string, inVMAccessControlProfileName: string, galleryInVMAccessControlProfile: GalleryInVMAccessControlProfileUpdate, options?: GalleryInVMAccessControlProfilesUpdateOptionalParams): Promise<GalleryInVMAccessControlProfilesUpdateResponse>;
    /**
     * Delete a gallery inVMAccessControlProfile.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param galleryName The name of the Shared Image Gallery.
     * @param inVMAccessControlProfileName The name of the gallery inVMAccessControlProfile to be
     *                                     retrieved.
     * @param options The options parameters.
     */
    beginDelete(resourceGroupName: string, galleryName: string, inVMAccessControlProfileName: string, options?: GalleryInVMAccessControlProfilesDeleteOptionalParams): Promise<SimplePollerLike<OperationState<GalleryInVMAccessControlProfilesDeleteResponse>, GalleryInVMAccessControlProfilesDeleteResponse>>;
    /**
     * Delete a gallery inVMAccessControlProfile.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param galleryName The name of the Shared Image Gallery.
     * @param inVMAccessControlProfileName The name of the gallery inVMAccessControlProfile to be
     *                                     retrieved.
     * @param options The options parameters.
     */
    beginDeleteAndWait(resourceGroupName: string, galleryName: string, inVMAccessControlProfileName: string, options?: GalleryInVMAccessControlProfilesDeleteOptionalParams): Promise<GalleryInVMAccessControlProfilesDeleteResponse>;
}
//# sourceMappingURL=galleryInVMAccessControlProfiles.d.ts.map