jacaranda
Version:
A lightweight styling library for React Native
35 lines (34 loc) • 1.41 kB
TypeScript
/**
* ISC License
* Copyright 2025 Javier Diaz Chamorro
*
* Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby
* granted, provided that the above copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING
* ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL,
* DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE
* OR PERFORMANCE OF THIS SOFTWARE.
*/
import { styles as baseStyles } from './index';
interface AllowedTokenCategories {
colors: string;
spacing: number;
fontSizes: number;
fonts: string;
lineHeight: number;
borderWidth: number;
borderStyles: 'solid' | 'dashed' | 'dotted' | 'none';
}
type TokenConfig = {
[K in keyof AllowedTokenCategories]?: Record<string, AllowedTokenCategories[K]>;
};
interface CreateTokensReturn {
styles: typeof baseStyles;
}
/**
* Creates a token system and returns the styles function
*/
export declare function createTokens<T extends TokenConfig>(tokenConfig: T): CreateTokensReturn;
export {};