/** * Lightweight SF Symbols utilities for TypeScript. * * This module intentionally avoids bundling the full list of symbol names. * It provides a branded string type, simple validators, and a small set of * commonly used examples for IDE hinting. Use any valid SF Symbol name. */ declare const __sfSymbolBrand: unique symbol; export type SFSymbol = string & { readonly [__sfSymbolBrand]: true; }; export type SFSymbolVersion = '1.0' | '1.1' | '2.0' | '2.1' | '2.2' | '3.0' | '3.1' | '3.2' | '3.3' | '4.0' | '4.1' | '4.2' | '5.0' | '5.1' | '5.2' | '5.3' | '6.0'; export declare const SFSymbolsVersionSupport: { readonly '1.0': { readonly ios: "13.0"; readonly macos: "10.15"; readonly tvos: "13.0"; readonly visionos: "1.0"; readonly watchos: "6.0"; }; readonly '1.1': { readonly ios: "13.1"; readonly macos: "11.0"; readonly tvos: "13.0"; readonly visionos: "1.0"; readonly watchos: "6.1"; }; readonly '2.0': { readonly ios: "14.0"; readonly macos: "11.0"; readonly tvos: "14.0"; readonly visionos: "1.0"; readonly watchos: "7.0"; }; readonly '2.1': { readonly ios: "14.2"; readonly macos: "11.0"; readonly tvos: "14.2"; readonly visionos: "1.0"; readonly watchos: "7.1"; }; readonly '2.2': { readonly ios: "14.5"; readonly macos: "11.3"; readonly tvos: "14.5"; readonly visionos: "1.0"; readonly watchos: "7.4"; }; readonly '3.0': { readonly ios: "15.0"; readonly macos: "12.0"; readonly tvos: "15.0"; readonly visionos: "1.0"; readonly watchos: "8.0"; }; readonly '3.1': { readonly ios: "15.1"; readonly macos: "12.0"; readonly tvos: "15.1"; readonly visionos: "1.0"; readonly watchos: "8.1"; }; readonly '3.2': { readonly ios: "15.2"; readonly macos: "12.1"; readonly tvos: "15.2"; readonly visionos: "1.0"; readonly watchos: "8.3"; }; readonly '3.3': { readonly ios: "15.4"; readonly macos: "12.3"; readonly tvos: "15.4"; readonly visionos: "1.0"; readonly watchos: "8.5"; }; readonly '4.0': { readonly ios: "16.0"; readonly macos: "13.0"; readonly tvos: "16.0"; readonly visionos: "1.0"; readonly watchos: "9.0"; }; readonly '4.1': { readonly ios: "16.1"; readonly macos: "13.0"; readonly tvos: "16.1"; readonly visionos: "1.0"; readonly watchos: "9.1"; }; readonly '4.2': { readonly ios: "16.4"; readonly macos: "13.3"; readonly tvos: "16.4"; readonly visionos: "1.0"; readonly watchos: "9.4"; }; readonly '5.0': { readonly ios: "17.0"; readonly macos: "14.0"; readonly tvos: "17.0"; readonly visionos: "1.0"; readonly watchos: "10.0"; }; readonly '5.1': { readonly ios: "17.2"; readonly macos: "14.2"; readonly tvos: "17.2"; readonly visionos: "1.1"; readonly watchos: "10.2"; }; readonly '5.2': { readonly ios: "17.4"; readonly macos: "14.24"; readonly tvos: "17.4"; readonly visionos: "1.1"; readonly watchos: "10.4"; }; readonly '5.3': { readonly ios: "17.6"; readonly macos: "14.6"; readonly tvos: "17.6"; readonly visionos: "1.3"; readonly watchos: "10.6"; }; readonly '6.0': { readonly ios: "18.0"; readonly macos: "15.0"; readonly tvos: "18.0"; readonly visionos: "2.0"; readonly watchos: "11.0"; }; }; /** * Heuristic validator for SF Symbol names. * Accepts dot-separated lowercase tokens with numbers (e.g. "arrow.up.circle.fill"). * This is not exhaustive, but helps catch obvious mistakes without enumerating names. */ export declare function isLikelySFSymbol(name: string): boolean; /** * Cast any string as an `SFSymbol`. Optionally validates in development. */ export declare function asSFSymbol(name: string): SFSymbol; /** * A small set of commonly used symbols for IDE hinting. * Extend locally if desired — values are const so TS will suggest them. */ export declare const CommonSFSymbols: readonly ["arrow.up", "arrow.down", "arrow.left", "arrow.right", "gear", "heart", "trash", "checkmark", "xmark"]; export type CommonSFSymbol = (typeof CommonSFSymbols)[number] & SFSymbol; export {}; //# sourceMappingURL=sf-symbols.d.ts.map