{
  "schemaVersion": 1,
  "package": "@fayegram-ai/faye-ui",
  "moduleGroup": "provider",
  "entry": "@fayegram-ai/faye-ui/provider/preferences",
  "source": "packages/provider/src/preferences.ts",
  "clientBoundary": false,
  "declarations": [
    {
      "name": "PreferenceSnapshot",
      "kind": "InterfaceDeclaration",
      "signature": "export interface PreferenceSnapshot {\n    readonly preference: ColorPreference;\n    readonly scheme: Scheme;\n}",
      "members": [
        {
          "name": "preference",
          "optional": false,
          "type": "ColorPreference"
        },
        {
          "name": "scheme",
          "optional": false,
          "type": "Scheme"
        }
      ],
      "line": 2
    },
    {
      "name": "PreferenceStore",
      "kind": "InterfaceDeclaration",
      "signature": "export interface PreferenceStore {\n    getSnapshot: () => PreferenceSnapshot;\n    getServerSnapshot: () => PreferenceSnapshot;\n    subscribe: (listener: () => void) => () => void;\n    setPreference: (value: ColorPreference) => void;\n    connect: (window: Window) => () => void;\n}",
      "members": [
        {
          "name": "getSnapshot",
          "optional": false,
          "type": "() => PreferenceSnapshot"
        },
        {
          "name": "getServerSnapshot",
          "optional": false,
          "type": "() => PreferenceSnapshot"
        },
        {
          "name": "subscribe",
          "optional": false,
          "type": "(listener: () => void) => () => void"
        },
        {
          "name": "setPreference",
          "optional": false,
          "type": "(value: ColorPreference) => void"
        },
        {
          "name": "connect",
          "optional": false,
          "type": "(window: Window) => () => void"
        }
      ],
      "line": 6
    },
    {
      "name": "isColorPreference",
      "kind": "FunctionDeclaration",
      "signature": "export function isColorPreference(value: unknown): value is ColorPreference",
      "line": 13
    },
    {
      "name": "createPreferenceStore",
      "kind": "FunctionDeclaration",
      "signature": "export function createPreferenceStore(initial: ColorPreference = 'system', serverScheme: Scheme = 'light', storageKey = 'faye-ui:color-scheme'): PreferenceStore",
      "line": 14
    }
  ],
  "typesComplete": false,
  "typeScope": "Explicit source declarations plus dependency-resolved emitted exports. Full inherited/generic restrictions remain authoritative in installed declarations.",
  "compiledExports": [
    {
      "name": "isColorPreference",
      "kind": "value",
      "type": "(value: unknown) => value is ColorPreference",
      "description": ""
    },
    {
      "name": "createPreferenceStore",
      "kind": "value",
      "type": "(initial?: ColorPreference, serverScheme?: Scheme, storageKey?: string) => PreferenceStore",
      "description": ""
    },
    {
      "name": "PreferenceSnapshot",
      "kind": "type",
      "type": "PreferenceSnapshot",
      "description": ""
    },
    {
      "name": "PreferenceStore",
      "kind": "type",
      "type": "PreferenceStore",
      "description": ""
    }
  ],
  "declaration": "packages/faye-ui/dist/provider/preferences.d.ts"
}
