import { AppConfigurationClientOptionalParams } from "./api/index.js";
import { CheckRevisionsOptionalParams, GetRevisionsOptionalParams, DeleteLockOptionalParams, PutLockOptionalParams, CheckLabelsOptionalParams, GetLabelsOptionalParams, CheckSnapshotOptionalParams, UpdateSnapshotOptionalParams, CreateSnapshotOptionalParams, GetOperationDetailsOptionalParams, GetSnapshotOptionalParams, CheckSnapshotsOptionalParams, GetSnapshotsOptionalParams, CheckKeyValueOptionalParams, DeleteKeyValueOptionalParams, PutKeyValueOptionalParams, GetKeyValueOptionalParams, CheckKeyValuesOptionalParams, GetKeyValuesOptionalParams, CheckKeysOptionalParams, GetKeysOptionalParams } from "./api/options.js";
import { Key, KeyValue, ConfigurationSnapshot, OperationDetails, SnapshotUpdateParameters, Label } from "./models/models.js";
import { PagedAsyncIterableIterator } from "./static-helpers/pagingHelpers.js";
import { KeyCredential, TokenCredential } from "@azure/core-auth";
import { PollerLike, OperationState } from "@azure/core-lro";
import { Pipeline } from "@azure/core-rest-pipeline";
export type { AppConfigurationClientOptionalParams } from "./api/appConfigurationContext.js";
export declare class AppConfigurationClient {
    private _client;
    /** The pipeline used by this client to make requests */
    readonly pipeline: Pipeline;
    /** Azure App Configuration REST API */
    constructor(endpointParam: string, credential: KeyCredential | TokenCredential, options?: AppConfigurationClientOptionalParams);
    /** Requests the headers and status of the given resource. */
    checkRevisions(options?: CheckRevisionsOptionalParams): Promise<void>;
    /** Gets a list of key-value revisions. */
    getRevisions(options?: GetRevisionsOptionalParams): PagedAsyncIterableIterator<KeyValue>;
    /** Unlocks a key-value. */
    deleteLock(key: string, options?: DeleteLockOptionalParams): Promise<KeyValue>;
    /** Locks a key-value. */
    putLock(key: string, options?: PutLockOptionalParams): Promise<KeyValue>;
    /** Requests the headers and status of the given resource. */
    checkLabels(options?: CheckLabelsOptionalParams): Promise<void>;
    /** Gets a list of labels. */
    getLabels(options?: GetLabelsOptionalParams): PagedAsyncIterableIterator<Label>;
    /** Requests the headers and status of the given resource. */
    checkSnapshot(name: string, options?: CheckSnapshotOptionalParams): Promise<void>;
    /** Updates the state of a key-value snapshot. */
    updateSnapshot(contentType: "application/merge-patch+json" | "application/json", name: string, entity: SnapshotUpdateParameters, options?: UpdateSnapshotOptionalParams): Promise<ConfigurationSnapshot>;
    /** Creates a key-value snapshot. */
    createSnapshot(contentType: "application/vnd.microsoft.appconfig.snapshot+json" | "application/json", name: string, entity: ConfigurationSnapshot, options?: CreateSnapshotOptionalParams): PollerLike<OperationState<ConfigurationSnapshot>, ConfigurationSnapshot>;
    /** Gets the state of a long running operation. */
    getOperationDetails(snapshot: string, options?: GetOperationDetailsOptionalParams): Promise<OperationDetails>;
    /** Gets a single key-value snapshot. */
    getSnapshot(name: string, options?: GetSnapshotOptionalParams): Promise<ConfigurationSnapshot>;
    /** Requests the headers and status of the given resource. */
    checkSnapshots(options?: CheckSnapshotsOptionalParams): Promise<void>;
    /** Gets a list of key-value snapshots. */
    getSnapshots(options?: GetSnapshotsOptionalParams): PagedAsyncIterableIterator<ConfigurationSnapshot>;
    /** Requests the headers and status of the given resource. */
    checkKeyValue(key: string, options?: CheckKeyValueOptionalParams): Promise<void>;
    /** Deletes a key-value. */
    deleteKeyValue(key: string, options?: DeleteKeyValueOptionalParams): Promise<KeyValue | undefined>;
    /** Creates a key-value. */
    putKeyValue(contentType: "application/vnd.microsoft.appconfig.kv+json" | "application/vnd.microsoft.appconfig.kvset+json" | "application/json" | "text/json" | "application/*+json" | "application/json-patch+json", key: string, options?: PutKeyValueOptionalParams): Promise<KeyValue>;
    /** Gets a single key-value. */
    getKeyValue(key: string, options?: GetKeyValueOptionalParams): Promise<KeyValue>;
    /** Requests the headers and status of the given resource. */
    checkKeyValues(options?: CheckKeyValuesOptionalParams): Promise<void>;
    /** Gets a list of key-values. */
    getKeyValues(options?: GetKeyValuesOptionalParams): PagedAsyncIterableIterator<KeyValue>;
    /** Requests the headers and status of the given resource. */
    checkKeys(options?: CheckKeysOptionalParams): Promise<void>;
    /** Gets a list of keys. */
    getKeys(options?: GetKeysOptionalParams): PagedAsyncIterableIterator<Key>;
}
//# sourceMappingURL=appConfigurationClient.d.ts.map