"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.useFeatureFlags = exports.FeatureFlagsProvider = void 0;
const react_1 = require("react");
/**
 * Context used for injecting the feature flagging implementation logic.
 *
 * @dev do not export this, it should be accessed exclusively through
 * useFeatureFlags and FeatureFlagsProvider
 */
const FeatureFlagsContext = (0, react_1.createContext)({
    isFeature: _ => false,
    getFeature: _ => null,
    overrideFeature: _ => { },
    resetFeature: _ => { },
    resetFeatures: () => { },
});
exports.FeatureFlagsProvider = FeatureFlagsContext.Provider;
/**
 * Hook to consume a FeatureFlagsContext
 */
function useFeatureFlags() {
    return (0, react_1.useContext)(FeatureFlagsContext);
}
exports.useFeatureFlags = useFeatureFlags;
//# sourceMappingURL=FeatureFlagsContext.js.map