/**
 * Utility functions to manage font properties to style mapping for both iOS and Android
 * Fonts are managed differently on Android and iOS. Read the Font section of the
 * README file included in this repository.
 */
import { TextStyle } from "react-native";
/**
 * Choose the font name based on the platform
 */
declare const fonts: {
    readonly TitilliumSansPro: string;
    readonly Titillio: string;
    readonly FiraCode: string;
};
export type IOFontFamily = keyof typeof fonts;
declare const allFontSizes: (16 | 20 | 12 | 14 | 22 | 26 | 28 | 32 | 17 | 31 | 35)[];
export type IOFontSize = (typeof allFontSizes)[number];
declare const weights: readonly ["Thin", "Light", "Regular", "Medium", "Semibold", "Bold", "Black"];
export type IOFontWeight = (typeof weights)[number];
declare const weightValues: readonly ["200", "300", "400", "500", "600", "700", "900"];
export type IOFontWeightNumeric = (typeof weightValues)[number];
/**
 * Mapping between the nominal description of the weight (also the postfix used on Android) and the numeric value
 * used on iOS
 */
export declare const fontWeights: Record<IOFontWeight, IOFontWeightNumeric>;
type FontStyleObject = {
    fontSize: IOFontSize | number;
    fontFamily: string | IOFontFamily;
    fontWeight?: IOFontWeightNumeric;
    lineHeight?: TextStyle["lineHeight"];
    fontStyle?: TextStyle["fontStyle"];
    boldEnabled?: boolean;
};
/**
 * Get the correct `fontFamily` name on both Android and iOS.
 * @param font
 * @param weight
 * @param isItalic
 */
export declare const makeFontFamilyName: (font: IOFontFamily, weight?: IOFontWeight, fontStyle?: TextStyle["fontStyle"]) => string;
export declare const IOMaxFontSizeMultiplier = 1.5;
/**
 * Return a {@link FontStyleObject} with the fields filled based on the platform (iOS or Android).
 * @param size
 * @param font
 * @param weight
 * @param fontStyle
 */
export declare const makeFontStyleObject: (size: number | undefined, font: IOFontFamily | undefined, lineHeight: TextStyle["lineHeight"], weight?: IOFontWeight, fontStyle?: TextStyle["fontStyle"], boldEnabled?: boolean) => FontStyleObject;
export {};
//# sourceMappingURL=fonts.d.ts.map