import type { PagedAsyncIterableIterator } from "@azure/core-paging";
import type { Provider } from "../operationsInterfaces/index.js";
import type { WebSiteManagementClient } from "../webSiteManagementClient.js";
import type { ApplicationStackResource, ProviderGetAvailableStacksOptionalParams, FunctionAppStack, ProviderGetFunctionAppStacksOptionalParams, ProviderGetFunctionAppStacksForLocationOptionalParams, WebAppStack, ProviderGetWebAppStacksForLocationOptionalParams, CsmOperationDescription, ProviderListOperationsOptionalParams, ProviderGetWebAppStacksOptionalParams, ProviderGetAvailableStacksOnPremOptionalParams } from "../models/index.js";
/** Class containing Provider operations. */
export declare class ProviderImpl implements Provider {
    private readonly client;
    /**
     * Initialize a new instance of the class Provider class.
     * @param client Reference to the service client
     */
    constructor(client: WebSiteManagementClient);
    /**
     * Description for Get available application frameworks and their versions
     * @param options The options parameters.
     */
    listAvailableStacks(options?: ProviderGetAvailableStacksOptionalParams): PagedAsyncIterableIterator<ApplicationStackResource>;
    private getAvailableStacksPagingPage;
    private getAvailableStacksPagingAll;
    /**
     * Description for Get available Function app frameworks and their versions
     * @param options The options parameters.
     */
    listFunctionAppStacks(options?: ProviderGetFunctionAppStacksOptionalParams): PagedAsyncIterableIterator<FunctionAppStack>;
    private getFunctionAppStacksPagingPage;
    private getFunctionAppStacksPagingAll;
    /**
     * Description for Get available Function app frameworks and their versions for location
     * @param location Function App stack location.
     * @param options The options parameters.
     */
    listFunctionAppStacksForLocation(location: string, options?: ProviderGetFunctionAppStacksForLocationOptionalParams): PagedAsyncIterableIterator<FunctionAppStack>;
    private getFunctionAppStacksForLocationPagingPage;
    private getFunctionAppStacksForLocationPagingAll;
    /**
     * Description for Get available Web app frameworks and their versions for location
     * @param location Web App stack location.
     * @param options The options parameters.
     */
    listWebAppStacksForLocation(location: string, options?: ProviderGetWebAppStacksForLocationOptionalParams): PagedAsyncIterableIterator<WebAppStack>;
    private getWebAppStacksForLocationPagingPage;
    private getWebAppStacksForLocationPagingAll;
    /**
     * Description for Gets all available operations for the Microsoft.Web resource provider. Also exposes
     * resource metric definitions
     * @param options The options parameters.
     */
    listOperations(options?: ProviderListOperationsOptionalParams): PagedAsyncIterableIterator<CsmOperationDescription>;
    private listOperationsPagingPage;
    private listOperationsPagingAll;
    /**
     * Description for Get available Web app frameworks and their versions
     * @param options The options parameters.
     */
    listWebAppStacks(options?: ProviderGetWebAppStacksOptionalParams): PagedAsyncIterableIterator<WebAppStack>;
    private getWebAppStacksPagingPage;
    private getWebAppStacksPagingAll;
    /**
     * Description for Get available application frameworks and their versions
     * @param options The options parameters.
     */
    listAvailableStacksOnPrem(options?: ProviderGetAvailableStacksOnPremOptionalParams): PagedAsyncIterableIterator<ApplicationStackResource>;
    private getAvailableStacksOnPremPagingPage;
    private getAvailableStacksOnPremPagingAll;
    /**
     * Description for Get available application frameworks and their versions
     * @param options The options parameters.
     */
    private _getAvailableStacks;
    /**
     * Description for Get available Function app frameworks and their versions
     * @param options The options parameters.
     */
    private _getFunctionAppStacks;
    /**
     * Description for Get available Function app frameworks and their versions for location
     * @param location Function App stack location.
     * @param options The options parameters.
     */
    private _getFunctionAppStacksForLocation;
    /**
     * Description for Get available Web app frameworks and their versions for location
     * @param location Web App stack location.
     * @param options The options parameters.
     */
    private _getWebAppStacksForLocation;
    /**
     * Description for Gets all available operations for the Microsoft.Web resource provider. Also exposes
     * resource metric definitions
     * @param options The options parameters.
     */
    private _listOperations;
    /**
     * Description for Get available Web app frameworks and their versions
     * @param options The options parameters.
     */
    private _getWebAppStacks;
    /**
     * Description for Get available application frameworks and their versions
     * @param options The options parameters.
     */
    private _getAvailableStacksOnPrem;
    /**
     * GetAvailableStacksNext
     * @param nextLink The nextLink from the previous successful call to the GetAvailableStacks method.
     * @param options The options parameters.
     */
    private _getAvailableStacksNext;
    /**
     * GetFunctionAppStacksNext
     * @param nextLink The nextLink from the previous successful call to the GetFunctionAppStacks method.
     * @param options The options parameters.
     */
    private _getFunctionAppStacksNext;
    /**
     * GetFunctionAppStacksForLocationNext
     * @param location Function App stack location.
     * @param nextLink The nextLink from the previous successful call to the
     *                 GetFunctionAppStacksForLocation method.
     * @param options The options parameters.
     */
    private _getFunctionAppStacksForLocationNext;
    /**
     * GetWebAppStacksForLocationNext
     * @param location Web App stack location.
     * @param nextLink The nextLink from the previous successful call to the GetWebAppStacksForLocation
     *                 method.
     * @param options The options parameters.
     */
    private _getWebAppStacksForLocationNext;
    /**
     * ListOperationsNext
     * @param nextLink The nextLink from the previous successful call to the ListOperations method.
     * @param options The options parameters.
     */
    private _listOperationsNext;
    /**
     * GetWebAppStacksNext
     * @param nextLink The nextLink from the previous successful call to the GetWebAppStacks method.
     * @param options The options parameters.
     */
    private _getWebAppStacksNext;
    /**
     * GetAvailableStacksOnPremNext
     * @param nextLink The nextLink from the previous successful call to the GetAvailableStacksOnPrem
     *                 method.
     * @param options The options parameters.
     */
    private _getAvailableStacksOnPremNext;
}
//# sourceMappingURL=provider.d.ts.map