import {Meta} from '@storybook/addon-docs/blocks'

<Meta title='@dxtmisha/ru/# UI/properties/! О файле properties.json'/>

# Конфигурация (properties.json)

Файл `properties.json` является декларативным манифестом вашего компонента. В нем вы описываете структуру, стили, состояния и параметры, которые затем автоматически преобразуются в готовый SCSS-код и типизированные TypeScript-интерфейсы (`props.ts`).

## Как работать с этим файлом?

Вместо того чтобы вручную писать сотни строк CSS для каждого псевдокласса или медиа-запроса, вы наполняете **дерево свойств**. Система анализирует этот файл и выполняет всю рутинную работу:
- **Генерация стилей (SCSS)**: Создает классы по методологии BEM, переменные и темы.
- **Генерация интерфейса (Props)**: Формирует публичные свойства компонента для Vue/React.
- **Синхронизация**: Гарантирует, что стили и программный интерфейс всегда соответствуют друг другу.

## Основная концепция

1.  **Токены (Tokens)**: Узлы дерева JSON, описывающие конкретные CSS-свойства или вложенные объекты.
2.  **Типы и Флаги (_type, _var...)**: Служебные параметры, определяющие логику обработки узла (генерация переменной, состояния или экспорт в Props).
3.  **Ссылки (Links)**: Система `{...}`, позволяющая заимствовать значения из других токенов или глобальных переменных дизайна.
4.  **Маркеры и Шорткаты**: Специальные префиксы (`~`, `group|`) и подстановки (`?`, `??`), ускоряющие написание сложных конфигураций.
