import { Project, Environment, Variable, Variation, ListAudience, Audience, FeatureConfiguration, Rollout, RolloutStage, Feature, Target, ConfigMetadata } from './models'; export { Rollout, RolloutStage, FeatureConfiguration, Feature, Variation, Audience, Variable, Project, Environment, ConfigMetadata, }; export { Rollout as PublicRollout, RolloutStage as PublicRolloutStage, FeatureConfiguration as PublicFeatureConfiguration, Feature as PublicFeature, Variation as PublicVariation, Audience as PublicAudience, Variable as PublicVariable, Target as PublicTarget, Project as PublicProject, Environment as PublicEnvironment, }; export declare class ConfigBody { /** * Basic project data used for building bucketing response */ project: Project; /** * Basic environment data used for building bucketing response */ environment: Environment; /** * Fully populated Feature model containing FeatureConfigurations / Variations / Audiences */ features: Feature[]; /** * All dynamic variables in a project */ variables: Variable[]; /** * Map of audience id to audience document, used to populate the _audience field for audienceMatch filters */ audiences?: { [id: string]: Omit, '_id'>; }; /** * Map of `variable.key` to `hash(variable.key + environment.apiKey)` * of all known variable keys. This is used to generate the `knownVariableKeys` * in the BucketingAPI response. */ variableHashes: { [key: string]: number; }; /** * **Implement Later** * * All List Audiences in the project * TODO make required when implemented */ listAudiences?: ListAudience[]; /** * List of DevCycle user IDs that are associated to dashboard profiles, indicating their use in debugging features */ debugUsers?: string[]; /** * SSE information used for establishing connections. */ sse?: { hostname: string; path: string; }; /** * @deprecated Deprecated ably connection/configuration */ ably?: { apiKey: string; }; /** * The client SDK key corresponding to this config. Used when a client config is * being retrieved via a server SDK key */ clientSDKKey?: string; }