export interface Config { /**
     * Integer indicating size of LRU cache used for memoizing results.
     * - Cache might be up to twice as big as `cacheSize`
     * - No cache is used for values <= 0
     */ cacheSize : number ; see https prefix ? : string ; /**
     * Theme scales used in classGroups.
     * The keys are the same as in the Tailwind config but the values are sometimes defined more broadly.
     */ theme : ThemeObject ; example classGroups : Record < ClassGroupId , ClassGroup > ; example conflictingClassGroups : Record < ClassGroupId , readonly ClassGroupId [ ] > ; } export type ThemeObject = Record < string , ClassGroup > ; export type ClassGroupId = string ; export type ClassGroup = readonly ClassDefinition [ ] ; type ClassDefinition = string | ClassValidator | ThemeGetter | ClassObject ; export type ClassValidator = ( classPart : string ) => boolean ; export interface ThemeGetter { ( theme ) : ClassGroup ; isThemeGetter : true ; } type ClassObject = Record < string , readonly ClassDefinition [ ] > ;