import type { CategoryId } from '../categories'; export const LOCALES = ['ru', 'en'] as const; export type Locale = (typeof LOCALES)[number]; export const BASE_LOCALE: Locale = 'en'; export const LOCALE_TAGS: Record = { ru: 'ru-RU', en: 'en-US' }; export function isLocale(value: unknown): value is Locale { return typeof value === 'string' && (LOCALES as readonly string[]).includes(value); } export type ToolStrings = { title?: string; description?: string; /** Подписи параметров по их id. */ params?: Record; /** Подписи опций select: paramId -> value -> label. */ options?: Record>; /** Тексты-результаты текстовых инструментов (analyze): ключ -> строка. */ results?: Record; }; export type HeaderStrings = { workspace: string; catalog: string; sectionsAria: string; footerNote: string; }; export type Dict = { header: HeaderStrings; categories: Record; home: Record; catalog: Record; toolPage: Record; chain: Record; sourceCard: Record; resultCard: Record; paramsCard: Record; textInput: Record; textResult: Record; download: Record; infoPanel: Record; dropZone: Record; search: Record; ui: Record; errors: Record; tools: Record; };