{
  "schemaVersion": 1,
  "package": "@fayegram-ai/faye-ui",
  "moduleGroup": "devtools",
  "entry": "@fayegram-ai/faye-ui/devtools/figma",
  "source": "packages/devtools/src/figma.ts",
  "clientBoundary": false,
  "declarations": [
    {
      "name": "FigmaType",
      "kind": "TypeAliasDeclaration",
      "signature": "export type FigmaType = 'COLOR' | 'FLOAT' | 'STRING';",
      "line": 9
    },
    {
      "name": "FigmaValue",
      "kind": "TypeAliasDeclaration",
      "signature": "export type FigmaValue = string | number | { readonly r: number; readonly g: number; readonly b: number; readonly a: number } | { readonly type: 'VARIABLE_ALIAS'; readonly id: string };",
      "line": 10
    },
    {
      "name": "FigmaAdapterOptions",
      "kind": "InterfaceDeclaration",
      "signature": "export interface FigmaAdapterOptions {\n    readonly contexts: readonly ThemeContextOptions[];\n    /** Explicit CSS rem conversion for Figma's unitless float values. */\n    readonly remPixels: number;\n    /** Actual document/account capacity; unsupported counts fail before writes. */\n    readonly maxModes: number;\n    readonly schema?: TokenContract;\n}",
      "members": [
        {
          "name": "contexts",
          "optional": false,
          "type": "readonly ThemeContextOptions[]"
        },
        {
          "name": "remPixels",
          "optional": false,
          "type": "number"
        },
        {
          "name": "maxModes",
          "optional": false,
          "type": "number"
        },
        {
          "name": "schema",
          "optional": true,
          "type": "TokenContract"
        }
      ],
      "line": 12
    },
    {
      "name": "FigmaPlan",
      "kind": "InterfaceDeclaration",
      "signature": "export interface FigmaPlan {\n    readonly schemaVersion: 1;\n    readonly collectionName: string;\n    readonly sourceRevision: string;\n    readonly sourceDigest: string;\n    readonly remPixels: number;\n    readonly modes: readonly { readonly key: string; readonly name: string; readonly context: ThemeContext }[];\n    readonly variables: readonly { readonly token: string; readonly stableId: string; readonly name: string; readonly description: string; readonly type: FigmaType; readonly values: Readonly<Record<string, ProjectedValue>> }[];\n    readonly notices: readonly string[];\n}",
      "members": [
        {
          "name": "schemaVersion",
          "optional": false,
          "type": "1"
        },
        {
          "name": "collectionName",
          "optional": false,
          "type": "string"
        },
        {
          "name": "sourceRevision",
          "optional": false,
          "type": "string"
        },
        {
          "name": "sourceDigest",
          "optional": false,
          "type": "string"
        },
        {
          "name": "remPixels",
          "optional": false,
          "type": "number"
        },
        {
          "name": "modes",
          "optional": false,
          "type": "readonly { readonly key: string; readonly name: string; readonly context: ThemeContext }[]"
        },
        {
          "name": "variables",
          "optional": false,
          "type": "readonly { readonly token: string; readonly stableId: string; readonly name: string; readonly description: string; readonly type: FigmaType; readonly values: Readonly<Record<string, ProjectedValue>> }[]"
        },
        {
          "name": "notices",
          "optional": false,
          "type": "readonly string[]"
        }
      ],
      "line": 20
    },
    {
      "name": "FigmaCollectionLike",
      "kind": "InterfaceDeclaration",
      "signature": "export interface FigmaCollectionLike extends PluginData {\n    readonly id: string; readonly name: string; readonly defaultModeId: string;\n    readonly modes: readonly { readonly modeId: string; readonly name: string }[];\n    hiddenFromPublishing: boolean;\n    addMode(name: string): string; renameMode(id: string, name: string): void; remove(): void;\n}",
      "members": [
        {
          "name": "id",
          "optional": false,
          "type": "string"
        },
        {
          "name": "name",
          "optional": false,
          "type": "string"
        },
        {
          "name": "defaultModeId",
          "optional": false,
          "type": "string"
        },
        {
          "name": "modes",
          "optional": false,
          "type": "readonly { readonly modeId: string; readonly name: string }[]"
        },
        {
          "name": "hiddenFromPublishing",
          "optional": false,
          "type": "boolean"
        },
        {
          "name": "addMode",
          "optional": false,
          "type": "string"
        },
        {
          "name": "renameMode",
          "optional": false,
          "type": "void"
        },
        {
          "name": "remove",
          "optional": false,
          "type": "void"
        }
      ],
      "line": 31
    },
    {
      "name": "FigmaVariableLike",
      "kind": "InterfaceDeclaration",
      "signature": "export interface FigmaVariableLike extends PluginData {\n    readonly id: string; readonly variableCollectionId: string; readonly name: string; readonly resolvedType: string;\n    description: string; hiddenFromPublishing: boolean; readonly valuesByMode: Readonly<Record<string, unknown>>;\n    setValueForMode(mode: string, value: FigmaValue): void; remove(): void;\n}",
      "members": [
        {
          "name": "id",
          "optional": false,
          "type": "string"
        },
        {
          "name": "variableCollectionId",
          "optional": false,
          "type": "string"
        },
        {
          "name": "name",
          "optional": false,
          "type": "string"
        },
        {
          "name": "resolvedType",
          "optional": false,
          "type": "string"
        },
        {
          "name": "description",
          "optional": false,
          "type": "string"
        },
        {
          "name": "hiddenFromPublishing",
          "optional": false,
          "type": "boolean"
        },
        {
          "name": "valuesByMode",
          "optional": false,
          "type": "Readonly<Record<string, unknown>>"
        },
        {
          "name": "setValueForMode",
          "optional": false,
          "type": "void"
        },
        {
          "name": "remove",
          "optional": false,
          "type": "void"
        }
      ],
      "line": 37
    },
    {
      "name": "FigmaVariablesHost",
      "kind": "InterfaceDeclaration",
      "signature": "export interface FigmaVariablesHost<C extends FigmaCollectionLike, V extends FigmaVariableLike> {\n    getLocalVariableCollectionsAsync(): Promise<readonly C[]>;\n    getLocalVariablesAsync(): Promise<readonly V[]>;\n    createVariableCollection(name: string): C;\n    createVariable(name: string, collection: C, type: FigmaType): V;\n}",
      "members": [
        {
          "name": "getLocalVariableCollectionsAsync",
          "optional": false,
          "type": "Promise<readonly C[]>"
        },
        {
          "name": "getLocalVariablesAsync",
          "optional": false,
          "type": "Promise<readonly V[]>"
        },
        {
          "name": "createVariableCollection",
          "optional": false,
          "type": "C"
        },
        {
          "name": "createVariable",
          "optional": false,
          "type": "V"
        }
      ],
      "line": 42
    },
    {
      "name": "createFigmaPlan",
      "kind": "FunctionDeclaration",
      "signature": "export async function createFigmaPlan(exchange: DesignExchange, collectionName: string, options: FigmaAdapterOptions): Promise<FigmaPlan>",
      "line": 85
    },
    {
      "name": "FigmaSnapshot",
      "kind": "InterfaceDeclaration",
      "signature": "export interface FigmaSnapshot {\n    readonly schemaVersion: 1;\n    readonly collectionId: string;\n    readonly plan: FigmaPlan;\n    readonly modes: Readonly<Record<string, string>>;\n    readonly variables: readonly { readonly id: string; readonly token: string; readonly stableId: string; readonly type: string; readonly values: Readonly<Record<string, FigmaValue>> }[];\n}",
      "members": [
        {
          "name": "schemaVersion",
          "optional": false,
          "type": "1"
        },
        {
          "name": "collectionId",
          "optional": false,
          "type": "string"
        },
        {
          "name": "plan",
          "optional": false,
          "type": "FigmaPlan"
        },
        {
          "name": "modes",
          "optional": false,
          "type": "Readonly<Record<string, string>>"
        },
        {
          "name": "variables",
          "optional": false,
          "type": "readonly { readonly id: string; readonly token: string; readonly stableId: string; readonly type: string; readonly values: Readonly<Record<string, FigmaValue>> }[]"
        }
      ],
      "line": 115
    },
    {
      "name": "exportFigmaVariables",
      "kind": "FunctionDeclaration",
      "signature": "export async function exportFigmaVariables<C extends FigmaCollectionLike, V extends FigmaVariableLike>(plan: FigmaPlan, host: FigmaVariablesHost<C, V>): Promise<string>",
      "line": 123
    },
    {
      "name": "readFigmaVariables",
      "kind": "FunctionDeclaration",
      "signature": "export async function readFigmaVariables<C extends FigmaCollectionLike, V extends FigmaVariableLike>(host: FigmaVariablesHost<C, V>, collectionId: string): Promise<FigmaSnapshot>",
      "line": 157
    },
    {
      "name": "importFigmaVariables",
      "kind": "FunctionDeclaration",
      "signature": "export async function importFigmaVariables(exchange: DesignExchange, snapshot: FigmaSnapshot, options: FigmaAdapterOptions): Promise<{ readonly exchange: DesignExchange; readonly changed: readonly string[] }>",
      "line": 174
    }
  ],
  "typesComplete": false,
  "typeScope": "Explicit source declarations plus dependency-resolved emitted exports. Full inherited/generic restrictions remain authoritative in installed declarations.",
  "compiledExports": [
    {
      "name": "createFigmaPlan",
      "kind": "value",
      "type": "(exchange: DesignExchange, collectionName: string, options: FigmaAdapterOptions) => Promise<FigmaPlan>",
      "description": "Reviewable projection; aliases and exact repository source remain in the exchange."
    },
    {
      "name": "exportFigmaVariables",
      "kind": "value",
      "type": "<C extends FigmaCollectionLike, V extends FigmaVariableLike>(plan: FigmaPlan, host: FigmaVariablesHost<C, V>) => Promise<string>",
      "description": "Host-invoked write to a new, unpublished collection. Roll back every acquired resource on failure."
    },
    {
      "name": "readFigmaVariables",
      "kind": "value",
      "type": "<C extends FigmaCollectionLike, V extends FigmaVariableLike>(host: FigmaVariablesHost<C, V>, collectionId: string) => Promise<FigmaSnapshot>",
      "description": "Read only. Host edits remain a reviewable snapshot before repository import."
    },
    {
      "name": "importFigmaVariables",
      "kind": "value",
      "type": "(exchange: DesignExchange, snapshot: FigmaSnapshot, options: FigmaAdapterOptions) => Promise<{ readonly exchange: DesignExchange; readonly changed: readonly string[]; }>",
      "description": "No-change import preserves source text/aliases, including native float32 color storage."
    },
    {
      "name": "FigmaType",
      "kind": "type",
      "type": "FigmaType",
      "description": ""
    },
    {
      "name": "FigmaValue",
      "kind": "type",
      "type": "FigmaValue",
      "description": ""
    },
    {
      "name": "FigmaAdapterOptions",
      "kind": "type",
      "type": "FigmaAdapterOptions",
      "description": ""
    },
    {
      "name": "FigmaPlan",
      "kind": "type",
      "type": "FigmaPlan",
      "description": ""
    },
    {
      "name": "FigmaCollectionLike",
      "kind": "type",
      "type": "FigmaCollectionLike",
      "description": ""
    },
    {
      "name": "FigmaVariableLike",
      "kind": "type",
      "type": "FigmaVariableLike",
      "description": ""
    },
    {
      "name": "FigmaVariablesHost",
      "kind": "type",
      "type": "FigmaVariablesHost<C, V>",
      "description": ""
    },
    {
      "name": "FigmaSnapshot",
      "kind": "type",
      "type": "FigmaSnapshot",
      "description": ""
    }
  ],
  "declaration": "packages/faye-ui/dist/devtools/figma.d.ts"
}
