import { PagedAsyncIterableIterator } from "@azure/core-paging";
import { SimplePollerLike, OperationState } from "@azure/core-lro";
import { NamedValueContract, NamedValueListByServiceOptionalParams, NamedValueGetEntityTagOptionalParams, NamedValueGetEntityTagResponse, NamedValueGetOptionalParams, NamedValueGetResponse, NamedValueCreateContract, NamedValueCreateOrUpdateOptionalParams, NamedValueCreateOrUpdateResponse, NamedValueUpdateParameters, NamedValueUpdateOptionalParams, NamedValueUpdateResponse, NamedValueDeleteOptionalParams, NamedValueListValueOptionalParams, NamedValueListValueResponse, NamedValueRefreshSecretOptionalParams, NamedValueRefreshSecretResponse } from "../models/index.js";
/** Interface representing a NamedValue. */
export interface NamedValue {
    /**
     * Lists a collection of named values defined within a service instance.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param serviceName The name of the API Management service.
     * @param options The options parameters.
     */
    listByService(resourceGroupName: string, serviceName: string, options?: NamedValueListByServiceOptionalParams): PagedAsyncIterableIterator<NamedValueContract>;
    /**
     * Gets the entity state (Etag) version of the named value specified by its identifier.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param serviceName The name of the API Management service.
     * @param namedValueId Identifier of the NamedValue.
     * @param options The options parameters.
     */
    getEntityTag(resourceGroupName: string, serviceName: string, namedValueId: string, options?: NamedValueGetEntityTagOptionalParams): Promise<NamedValueGetEntityTagResponse>;
    /**
     * Gets the details of the named value specified by its identifier.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param serviceName The name of the API Management service.
     * @param namedValueId Identifier of the NamedValue.
     * @param options The options parameters.
     */
    get(resourceGroupName: string, serviceName: string, namedValueId: string, options?: NamedValueGetOptionalParams): Promise<NamedValueGetResponse>;
    /**
     * Creates or updates named value.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param serviceName The name of the API Management service.
     * @param namedValueId Identifier of the NamedValue.
     * @param parameters Create parameters.
     * @param options The options parameters.
     */
    beginCreateOrUpdate(resourceGroupName: string, serviceName: string, namedValueId: string, parameters: NamedValueCreateContract, options?: NamedValueCreateOrUpdateOptionalParams): Promise<SimplePollerLike<OperationState<NamedValueCreateOrUpdateResponse>, NamedValueCreateOrUpdateResponse>>;
    /**
     * Creates or updates named value.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param serviceName The name of the API Management service.
     * @param namedValueId Identifier of the NamedValue.
     * @param parameters Create parameters.
     * @param options The options parameters.
     */
    beginCreateOrUpdateAndWait(resourceGroupName: string, serviceName: string, namedValueId: string, parameters: NamedValueCreateContract, options?: NamedValueCreateOrUpdateOptionalParams): Promise<NamedValueCreateOrUpdateResponse>;
    /**
     * Updates the specific named value.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param serviceName The name of the API Management service.
     * @param namedValueId Identifier of the NamedValue.
     * @param ifMatch ETag of the Entity. ETag should match the current entity state from the header
     *                response of the GET request or it should be * for unconditional update.
     * @param parameters Update parameters.
     * @param options The options parameters.
     */
    beginUpdate(resourceGroupName: string, serviceName: string, namedValueId: string, ifMatch: string, parameters: NamedValueUpdateParameters, options?: NamedValueUpdateOptionalParams): Promise<SimplePollerLike<OperationState<NamedValueUpdateResponse>, NamedValueUpdateResponse>>;
    /**
     * Updates the specific named value.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param serviceName The name of the API Management service.
     * @param namedValueId Identifier of the NamedValue.
     * @param ifMatch ETag of the Entity. ETag should match the current entity state from the header
     *                response of the GET request or it should be * for unconditional update.
     * @param parameters Update parameters.
     * @param options The options parameters.
     */
    beginUpdateAndWait(resourceGroupName: string, serviceName: string, namedValueId: string, ifMatch: string, parameters: NamedValueUpdateParameters, options?: NamedValueUpdateOptionalParams): Promise<NamedValueUpdateResponse>;
    /**
     * Deletes specific named value from the API Management service instance.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param serviceName The name of the API Management service.
     * @param namedValueId Identifier of the NamedValue.
     * @param ifMatch ETag of the Entity. ETag should match the current entity state from the header
     *                response of the GET request or it should be * for unconditional update.
     * @param options The options parameters.
     */
    delete(resourceGroupName: string, serviceName: string, namedValueId: string, ifMatch: string, options?: NamedValueDeleteOptionalParams): Promise<void>;
    /**
     * Gets the secret of the named value specified by its identifier.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param serviceName The name of the API Management service.
     * @param namedValueId Identifier of the NamedValue.
     * @param options The options parameters.
     */
    listValue(resourceGroupName: string, serviceName: string, namedValueId: string, options?: NamedValueListValueOptionalParams): Promise<NamedValueListValueResponse>;
    /**
     * Refresh the secret of the named value specified by its identifier.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param serviceName The name of the API Management service.
     * @param namedValueId Identifier of the NamedValue.
     * @param options The options parameters.
     */
    beginRefreshSecret(resourceGroupName: string, serviceName: string, namedValueId: string, options?: NamedValueRefreshSecretOptionalParams): Promise<SimplePollerLike<OperationState<NamedValueRefreshSecretResponse>, NamedValueRefreshSecretResponse>>;
    /**
     * Refresh the secret of the named value specified by its identifier.
     * @param resourceGroupName The name of the resource group. The name is case insensitive.
     * @param serviceName The name of the API Management service.
     * @param namedValueId Identifier of the NamedValue.
     * @param options The options parameters.
     */
    beginRefreshSecretAndWait(resourceGroupName: string, serviceName: string, namedValueId: string, options?: NamedValueRefreshSecretOptionalParams): Promise<NamedValueRefreshSecretResponse>;
}
//# sourceMappingURL=namedValue.d.ts.map