import { PagedAsyncIterableIterator } from "@azure/core-paging";
import { SimplePollerLike, OperationState } from "@azure/core-lro";
import { GalleryApplication, GalleryApplicationsListByGalleryOptionalParams, GalleryApplicationsGetOptionalParams, GalleryApplicationsGetResponse, GalleryApplicationsCreateOrUpdateOptionalParams, GalleryApplicationsCreateOrUpdateResponse, GalleryApplicationUpdate, GalleryApplicationsUpdateOptionalParams, GalleryApplicationsUpdateResponse, GalleryApplicationsDeleteOptionalParams } from "../models/index.js";
/** Interface representing a GalleryApplications. */
export interface GalleryApplications {
    /**
     * List gallery Application Definitions 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?: GalleryApplicationsListByGalleryOptionalParams): PagedAsyncIterableIterator<GalleryApplication>;
    /**
     * Retrieves information about a gallery Application Definition.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param galleryName The name of the Shared Image Gallery.
     * @param galleryApplicationName The name of the gallery Application Definition to be retrieved.
     * @param options The options parameters.
     */
    get(resourceGroupName: string, galleryName: string, galleryApplicationName: string, options?: GalleryApplicationsGetOptionalParams): Promise<GalleryApplicationsGetResponse>;
    /**
     * Create or update a gallery Application Definition.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param galleryName The name of the Shared Image Gallery.
     * @param galleryApplicationName The name of the gallery Application Definition to be retrieved.
     * @param galleryApplication Parameters supplied to the create or update gallery Application operation.
     * @param options The options parameters.
     */
    beginCreateOrUpdate(resourceGroupName: string, galleryName: string, galleryApplicationName: string, galleryApplication: GalleryApplication, options?: GalleryApplicationsCreateOrUpdateOptionalParams): Promise<SimplePollerLike<OperationState<GalleryApplicationsCreateOrUpdateResponse>, GalleryApplicationsCreateOrUpdateResponse>>;
    /**
     * Create or update a gallery Application Definition.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param galleryName The name of the Shared Image Gallery.
     * @param galleryApplicationName The name of the gallery Application Definition to be retrieved.
     * @param galleryApplication Parameters supplied to the create or update gallery Application operation.
     * @param options The options parameters.
     */
    beginCreateOrUpdateAndWait(resourceGroupName: string, galleryName: string, galleryApplicationName: string, galleryApplication: GalleryApplication, options?: GalleryApplicationsCreateOrUpdateOptionalParams): Promise<GalleryApplicationsCreateOrUpdateResponse>;
    /**
     * Update a gallery Application Definition.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param galleryName The name of the Shared Image Gallery.
     * @param galleryApplicationName The name of the gallery Application Definition to be retrieved.
     * @param galleryApplication Parameters supplied to the update gallery Application operation.
     * @param options The options parameters.
     */
    beginUpdate(resourceGroupName: string, galleryName: string, galleryApplicationName: string, galleryApplication: GalleryApplicationUpdate, options?: GalleryApplicationsUpdateOptionalParams): Promise<SimplePollerLike<OperationState<GalleryApplicationsUpdateResponse>, GalleryApplicationsUpdateResponse>>;
    /**
     * Update a gallery Application Definition.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param galleryName The name of the Shared Image Gallery.
     * @param galleryApplicationName The name of the gallery Application Definition to be retrieved.
     * @param galleryApplication Parameters supplied to the update gallery Application operation.
     * @param options The options parameters.
     */
    beginUpdateAndWait(resourceGroupName: string, galleryName: string, galleryApplicationName: string, galleryApplication: GalleryApplicationUpdate, options?: GalleryApplicationsUpdateOptionalParams): Promise<GalleryApplicationsUpdateResponse>;
    /**
     * Delete a gallery Application.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param galleryName The name of the Shared Image Gallery.
     * @param galleryApplicationName The name of the gallery Application Definition to be retrieved.
     * @param options The options parameters.
     */
    beginDelete(resourceGroupName: string, galleryName: string, galleryApplicationName: string, options?: GalleryApplicationsDeleteOptionalParams): Promise<SimplePollerLike<OperationState<void>, void>>;
    /**
     * Delete a gallery Application.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param galleryName The name of the Shared Image Gallery.
     * @param galleryApplicationName The name of the gallery Application Definition to be retrieved.
     * @param options The options parameters.
     */
    beginDeleteAndWait(resourceGroupName: string, galleryName: string, galleryApplicationName: string, options?: GalleryApplicationsDeleteOptionalParams): Promise<void>;
}
//# sourceMappingURL=galleryApplications.d.ts.map