import { Target } from '@diez/engine'; import { File } from './file'; /** * Valid face forms for `@font-face` declarations in web. */ export declare const enum FontStyle { Normal = "normal", Italic = "italic" } /** * Font data. */ export interface FontData { /** * The font file containing the font's definition. Due to target limitations, the file _must_ be a TrueType file * with a `.ttf` extension or an OpenType file with an `.otf` extension. */ file: File; /** * The exact, correct PostScript name of the font. */ name: string; /** * An array of fallback fonts (web only). */ fallbacks: string[]; /** * The weight or boldness of the font (web only). */ weight: number; /** * The font style (web only). */ style: FontStyle; } /** * Valid Google Fonts data options. */ export declare type GoogleWebFontData = Pick; declare const Font_base: new (overrides?: Partial | undefined) => import("@diez/engine").Prefab & FontData; /** * A representation of a font resource, with a reference to a [[File]] containing a TTF or OTF font file. * @noinheritdoc */ export declare class Font extends Font_base { defaults: { file: File; name: string; fallbacks: string[]; weight: number; style: FontStyle; }; options: { fallbacks: { targets: Target[]; }; weight: { targets: Target[]; }; style: { targets: Target[]; }; }; /** * Creates a Font component from a source file and its PostScript name. * * @param src - The relative path of the font file. * @param postscriptName - The correct PostScript name of the font contained by the font file. If blank, it is assumed * the correct name is assumed to be the base name of the file minus its extension. */ static fromFile(src: string, postscriptName?: string): Font; static googleWebFont(name: string, data: GoogleWebFontData): Font; toPresentableValue(): string; } export {}; //# sourceMappingURL=font.d.ts.map