class MemoryProvider
implements FlagProvider
Since 0.1.0

Mutable in-memory flag provider.

Flags can be added, removed, or replaced at runtime. Useful for tests and dynamic flag management within a single process.

Examples

Example 1

const provider = new MemoryProvider({
  'beta': { enabled: true },
});
provider.setFlag('new-feature', { enabled: false });
provider.removeFlag('beta');
provider.replaceFlags({ 'new-feature': { enabled: true } });

Constructors

MemoryProvider(initialFlags?: Readonly<Record<string, FlagDefinition>>)

Properties

readonly
type: "memory"

Provider type identifier.

Methods

isEnabled(
flag: string,
context?: FlagContext
): boolean

Evaluates the flag against the current flag map.

removeFlag(name: string): void

Removes a flag by name.

replaceFlags(flags: Readonly<Record<string, FlagDefinition>>): void

Replaces all flags with a new set.

setFlag(
name: string,
): void

Sets or updates a flag definition.

start(): Promise<void>

No-op — in-memory store needs no startup.

stop(): Promise<void>

No-op — in-memory store needs no shutdown.

Usage

import { MemoryProvider } from "feature-flags-plugin/src/index.ts";