import { CLIDetails, ConfigSectionReader, CredentialGetter, getEnvironmentConfig, Logger } from '../index'; export declare type FeatureGate = 'forge-cli-test-gate' | 'is-logs-v-2-api-enabled' | 'forge-cli-bundle-runtime-loader' | 'forge-cli-enable-teamwork-graph-product-support' | 'forge-cli-enable-developer-space-flow' | 'forge-cli-enable-developer-space-enforcement-flow' | 'forge-cli-enable-typescript-bundler' | 'forge-cli-enable-self-managed-tunnel'; export declare type DynamicConfig = { 'forge-cli-test-dynamic-configs': string[]; 'xls-forge-cli-deprecated-runtimes': string[]; 'forge-cli-enable-custom-spinner': string[]; }; export declare type DynamicConfigKey = keyof DynamicConfig; export declare abstract class StatsigReader { abstract checkGate(flag: F, customAttributes?: Record): Promise; abstract getDynamicConfig(flag: F, metadata?: Record): Promise; testForgeCliTestGate(): Promise; getForgeCliTestDynamicConfig(): Promise; isLogsV2ApiEnabled(): Promise; isTeamworkGraphProductSupported(): Promise; testForgeCliBundleRuntimeLoaderGate(): Promise; getDeprecatedRuntimes(): Promise; isDevSpaceSelectionEnabled(): Promise; isDeveloperSpaceEnforcementFlowEnabled(): Promise; isTypescriptBundlerEnabled(): Promise; isSelfManagedTunnelEnabled(): Promise; getCustomSpinnerConfig(): Promise; } export declare function cacheStatsigResult(getter: (this: C, ...args: any[]) => Promise): (this: C, ...args: any[]) => Promise; export declare class StatsigService extends StatsigReader { private readonly logger; private readonly cliDetails; private readonly credentialStore; private readonly appConfigReader; private readonly getEnvironmentFn; constructor(logger: Logger, cliDetails: Pick | undefined, credentialStore: CredentialGetter, appConfigReader: ConfigSectionReader<{ id: string; }>, getEnvironmentFn?: typeof getEnvironmentConfig); private appID; private context; private fetchGates; private fetchDynamicConfigs; private gatesClient; private dynamicConfigClient; checkGate(gate: F, customAttributes?: Record): Promise; getDynamicConfig(dynamicConfig: F, metadata?: Record): Promise; } //# sourceMappingURL=statsig-service.d.ts.map