// Auto-generated by designlang. Do not edit by hand.
// Re-extract with `npx designlang <url>` to refresh.
//
// Import next to your token JSON to get type-safe access:
//
//   import type { ColorToken, SpacingToken } from './<host>-tokens';
//   import tokens from './<host>-design-tokens.json';
//
// Source: https://figma.com
// Generated: 2026-05-17T21:16:19.285Z

export type Hex = `#${string}`;
export type Px  = `${number}px`;
export type Ms  = `${number}ms`;

export type ColorRole = 'primary' | 'secondary' | 'accent';
export type ColorHex  = '#000000' | '#ffffff' | '#697485' | '#33dfdf' | '#b98e01' | '#24cb71' | '#e6e6e6' | '#4d49fc' | '#f3ffe3' | '#e4ff97' | '#00b6ff' | '#c4baff' | '#95b9ac' | '#ff7237' | '#cb9fd2' | '#ffc9c1' | '#721c1c' | '#c7f8fb';
export type ColorToken = ColorRole | ColorHex;

export type FontFamilyToken = 'figmaSans' | 'figmaMono';
export type FontSizeToken   = never;
export type FontWeightToken = '400' | '330' | '320' | '480' | '540' | '340' | '450' | '700';

export type SpacingToken = '1px' | '16px' | '24px' | '27px' | '40px' | '44px' | '53px' | '60px' | '64px' | '80px' | '107px' | '120px' | '160px' | '409px';

export type RadiusToken = '2px' | '8px' | '16px' | '50px';

export type DurationToken = '100ms' | '160ms' | '300ms' | '500ms' | '800ms' | '2000ms';
export type EasingToken   = never;

export type MaterialLanguage = 'flat';

export interface DesignTokens {
  color: { [role in ColorRole]: ColorHex };
  typography: {
    family: FontFamilyToken;
    size: FontSizeToken;
    weight: FontWeightToken;
  };
  spacing: ReadonlyArray<SpacingToken>;
  radius:  ReadonlyArray<RadiusToken>;
  motion: {
    duration: ReadonlyArray<DurationToken>;
    easing:   ReadonlyArray<EasingToken>;
  };
}

declare const tokens: DesignTokens;
export default tokens;
