import { ColorInput, TinyColor } from './index';
|
/**
|
* AKA `contrast`
|
*
|
* Analyze the 2 colors and returns the color contrast defined by (WCAG Version 2)
|
*/
|
export declare function readability(color1: ColorInput, color2: ColorInput): number;
|
export interface WCAG2Parms {
|
level?: 'AA' | 'AAA';
|
size?: 'large' | 'small';
|
}
|
/**
|
* Ensure that foreground and background color combinations meet WCAG2 guidelines.
|
* The third argument is an object.
|
* the 'level' property states 'AA' or 'AAA' - if missing or invalid, it defaults to 'AA';
|
* the 'size' property states 'large' or 'small' - if missing or invalid, it defaults to 'small'.
|
* If the entire object is absent, isReadable defaults to {level:"AA",size:"small"}.
|
*
|
* Example
|
* ```ts
|
* new TinyColor().isReadable('#000', '#111') => false
|
* new TinyColor().isReadable('#000', '#111', { level: 'AA', size: 'large' }) => false
|
* ```
|
*/
|
export declare function isReadable(color1: ColorInput, color2: ColorInput, wcag2?: WCAG2Parms): boolean;
|
export interface WCAG2FallbackParms extends WCAG2Parms {
|
includeFallbackColors?: boolean;
|
}
|
/**
|
* Given a base color and a list of possible foreground or background
|
* colors for that base, returns the most readable color.
|
* Optionally returns Black or White if the most readable color is unreadable.
|
*
|
* @param baseColor - the base color.
|
* @param colorList - array of colors to pick the most readable one from.
|
* @param args - and object with extra arguments
|
*
|
* Example
|
* ```ts
|
* new TinyColor().mostReadable('#123', ['#124", "#125'], { includeFallbackColors: false }).toHexString(); // "#112255"
|
* new TinyColor().mostReadable('#123', ['#124", "#125'],{ includeFallbackColors: true }).toHexString(); // "#ffffff"
|
* new TinyColor().mostReadable('#a8015a', ["#faf3f3"], { includeFallbackColors:true, level: 'AAA', size: 'large' }).toHexString(); // "#faf3f3"
|
* new TinyColor().mostReadable('#a8015a', ["#faf3f3"], { includeFallbackColors:true, level: 'AAA', size: 'small' }).toHexString(); // "#ffffff"
|
* ```
|
*/
|
export declare function mostReadable(baseColor: ColorInput, colorList: ColorInput[], args?: WCAG2FallbackParms): TinyColor | null;
|