import { LaunchDarklyCore } from "../core.js";
import { RequestOptions } from "../lib/sdks.js";
import * as components from "../models/components/index.js";
import { ConnectionError, InvalidRequestError, RequestAbortedError, RequestTimeoutError, UnexpectedClientError } from "../models/errors/httpclienterrors.js";
import * as errors from "../models/errors/index.js";
import { LaunchDarklyError } from "../models/errors/launchdarklyerror.js";
import { ResponseValidationError } from "../models/errors/responsevalidationerror.js";
import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
import * as operations from "../models/operations/index.js";
import { APIPromise } from "../types/async.js";
import { Result } from "../types/fp.js";
/**
 * Get feature flag
 *
 * @remarks
 * Get a single feature flag by key. By default, this returns the configurations for all environments. You can filter environments with the `env` query parameter. For example, setting `env=production` restricts the returned configurations to just the `production` environment.
 *
 * > #### Recommended use
 * >
 * > This endpoint can return a large amount of information. Specifying one or multiple environments with the `env` parameter can decrease response time and overall payload size. We recommend using this parameter to return only the environments relevant to your query.
 *
 * ### Expanding response
 *
 * LaunchDarkly supports the `expand` query param to include additional fields in the response, with the following fields:
 *
 * - `evaluation` includes evaluation information within returned environments, including which context kinds the flag has been evaluated for in the past 30 days
 * - `migrationSettings` includes migration settings information within the flag and within returned environments. These settings are only included for migration flags, that is, where `purpose` is `migration`.
 *
 * For example, `expand=evaluation` includes the `evaluation` field in the response.
 */
export declare function featureFlagsGet(client: LaunchDarklyCore, request: operations.GetFeatureFlagRequest, options?: RequestOptions): APIPromise<Result<components.FeatureFlag, errors.UnauthorizedErrorRep | errors.ForbiddenErrorRep | errors.NotFoundErrorRep | errors.RateLimitedErrorRep | LaunchDarklyError | ResponseValidationError | ConnectionError | RequestAbortedError | RequestTimeoutError | InvalidRequestError | UnexpectedClientError | SDKValidationError>>;
//# sourceMappingURL=featureFlagsGet.d.ts.map