/** * @module * This module contains functions to query and mutate * Azure App Configuration for feature flags. */ import type { FeatureFlagServiceOptions, AppConfigurationClient } from "./utils/app-config.js"; import type { FeatureFlag, FeatureFlagsRecord } from "./types.js"; import { AppConfigurationClientLite } from "./client.js"; export type { FeatureFlag, FeatureFlagsRecord } from "./types.js"; export type { FeatureFlagServiceOptions } from "./utils/app-config.js"; /** * Fetch all feature flags related settings from Azure App Configuration * and parse them to a record/object. * * @example * ```ts * const featureFlags = await getFeatureFlagsRecord(client); * ``` */ export declare function getFeatureFlagsRecord(client: AppConfigurationClientLite | AppConfigurationClient, options?: FeatureFlagServiceOptions): Promise; /** * Fetch all feature flags related settings from Azure App Configuration * and parse them to a list/array. * * @example * ```ts * const featureFlags = await getFeatureFlagsList(client); * ``` */ export declare function getFeatureFlagsList(client: AppConfigurationClientLite | AppConfigurationClient, options?: FeatureFlagServiceOptions): Promise; /** * Fetch single feature flag related setting from Azure App Configuration * by its key/id and parse it. * * @example * ```ts * const featureFlagKey = "your-feature-flag-key"; * const featureFlag = await getFeatureFlagByKey(client, featureFlagKey); * ``` */ export declare function getFeatureFlagByKey(client: AppConfigurationClientLite | AppConfigurationClient, key: string, options?: FeatureFlagServiceOptions): Promise; /** * Add new or update existing feature flags related settings * to Azure App Configuration. * * @example * ```ts * const featureFlag: FeatureFlag = { * id: "your-feature-flag-id", * enabled: true, * conditions: { client_filters: [] }, * }; * const success: boolean = await setFeatureFlag(client, featureFlag); * ``` */ export declare function setFeatureFlag(client: AppConfigurationClientLite | AppConfigurationClient, featureFlag: FeatureFlag, options?: FeatureFlagServiceOptions): Promise; /** * Delete existing feature flags related settings * from Azure App Configuration. * * @example * ```ts * const featureFlagKey = "your-feature-flag-key"; * const success: boolean = await deleteFeatureFlag(client, featureFlagKey); * ``` */ export declare function deleteFeatureFlag(client: AppConfigurationClientLite | AppConfigurationClient, key: string, label?: string): Promise;