import { PagedAsyncIterableIterator } from "@azure/core-paging";
import { DataCollectionEndpoints } from "../operationsInterfaces";
import { MonitorClient } from "../monitorClient";
import { DataCollectionEndpointResource, DataCollectionEndpointsListByResourceGroupOptionalParams, DataCollectionEndpointsListBySubscriptionOptionalParams, DataCollectionEndpointsGetOptionalParams, DataCollectionEndpointsGetResponse, DataCollectionEndpointsCreateOptionalParams, DataCollectionEndpointsCreateResponse, DataCollectionEndpointsUpdateOptionalParams, DataCollectionEndpointsUpdateResponse, DataCollectionEndpointsDeleteOptionalParams } from "../models";
/** Class containing DataCollectionEndpoints operations. */
export declare class DataCollectionEndpointsImpl implements DataCollectionEndpoints {
    private readonly client;
    /**
     * Initialize a new instance of the class DataCollectionEndpoints class.
     * @param client Reference to the service client
     */
    constructor(client: MonitorClient);
    /**
     * Lists all data collection endpoints in the specified resource group.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param options The options parameters.
     */
    listByResourceGroup(resourceGroupName: string, options?: DataCollectionEndpointsListByResourceGroupOptionalParams): PagedAsyncIterableIterator<DataCollectionEndpointResource>;
    private listByResourceGroupPagingPage;
    private listByResourceGroupPagingAll;
    /**
     * Lists all data collection endpoints in the specified subscription
     * @param options The options parameters.
     */
    listBySubscription(options?: DataCollectionEndpointsListBySubscriptionOptionalParams): PagedAsyncIterableIterator<DataCollectionEndpointResource>;
    private listBySubscriptionPagingPage;
    private listBySubscriptionPagingAll;
    /**
     * Lists all data collection endpoints in the specified resource group.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param options The options parameters.
     */
    private _listByResourceGroup;
    /**
     * Lists all data collection endpoints in the specified subscription
     * @param options The options parameters.
     */
    private _listBySubscription;
    /**
     * Returns the specified data collection endpoint.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param dataCollectionEndpointName The name of the data collection endpoint. The name is case
     *                                   insensitive.
     * @param options The options parameters.
     */
    get(resourceGroupName: string, dataCollectionEndpointName: string, options?: DataCollectionEndpointsGetOptionalParams): Promise<DataCollectionEndpointsGetResponse>;
    /**
     * Creates or updates a data collection endpoint.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param dataCollectionEndpointName The name of the data collection endpoint. The name is case
     *                                   insensitive.
     * @param options The options parameters.
     */
    create(resourceGroupName: string, dataCollectionEndpointName: string, options?: DataCollectionEndpointsCreateOptionalParams): Promise<DataCollectionEndpointsCreateResponse>;
    /**
     * Updates part of a data collection endpoint.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param dataCollectionEndpointName The name of the data collection endpoint. The name is case
     *                                   insensitive.
     * @param options The options parameters.
     */
    update(resourceGroupName: string, dataCollectionEndpointName: string, options?: DataCollectionEndpointsUpdateOptionalParams): Promise<DataCollectionEndpointsUpdateResponse>;
    /**
     * Deletes a data collection endpoint.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param dataCollectionEndpointName The name of the data collection endpoint. The name is case
     *                                   insensitive.
     * @param options The options parameters.
     */
    delete(resourceGroupName: string, dataCollectionEndpointName: string, options?: DataCollectionEndpointsDeleteOptionalParams): Promise<void>;
    /**
     * ListByResourceGroupNext
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method.
     * @param options The options parameters.
     */
    private _listByResourceGroupNext;
    /**
     * ListBySubscriptionNext
     * @param nextLink The nextLink from the previous successful call to the ListBySubscription method.
     * @param options The options parameters.
     */
    private _listBySubscriptionNext;
}
//# sourceMappingURL=dataCollectionEndpoints.d.ts.map