import { Configuration } from './Configuration'; import { Descriptor, Locator, Ident } from './types'; export declare enum Type { NO_HINT = "NO_HINT", NULL = "NULL", SCOPE = "SCOPE", NAME = "NAME", RANGE = "RANGE", REFERENCE = "REFERENCE", NUMBER = "NUMBER", PATH = "PATH", URL = "URL", ADDED = "ADDED", REMOVED = "REMOVED", CODE = "CODE", DURATION = "DURATION", SIZE = "SIZE", IDENT = "IDENT", DESCRIPTOR = "DESCRIPTOR", LOCATOR = "LOCATOR", RESOLUTION = "RESOLUTION", DEPENDENT = "DEPENDENT" } export declare enum Style { BOLD = 2 } export declare const supportsColor: boolean; export declare const supportsHyperlinks: boolean; declare const transforms: { NUMBER: { pretty: (configuration: any, val: number) => string; json: (val: number) => any; }; IDENT: { pretty: (configuration: any, val: Ident) => string; json: (val: Ident) => any; }; LOCATOR: { pretty: (configuration: any, val: Locator) => string; json: (val: Locator) => any; }; DESCRIPTOR: { pretty: (configuration: any, val: Descriptor) => string; json: (val: Descriptor) => any; }; RESOLUTION: { pretty: (configuration: any, val: { descriptor: Descriptor; locator: Locator | null; }) => string; json: (val: { descriptor: Descriptor; locator: Locator | null; }) => any; }; DEPENDENT: { pretty: (configuration: any, val: { locator: Locator; descriptor: Descriptor; }) => string; json: (val: { locator: Locator; descriptor: Descriptor; }) => any; }; DURATION: { pretty: (configuration: any, val: number) => string; json: (val: number) => any; }; SIZE: { pretty: (configuration: any, val: number) => string; json: (val: number) => any; }; PATH: { pretty: (configuration: any, val: string) => string; json: (val: string) => any; }; }; declare type AllTransforms = typeof transforms; export declare type Source = T extends keyof AllTransforms ? Parameters[0] | null : string | null; export declare type Tuple = readonly [Source, T]; export declare function tuple(formatType: T, value: Source): Tuple; export declare function applyStyle(configuration: Configuration, text: string, flags: Style): string; export declare function applyColor(configuration: Configuration, value: string, formatType: Type | string): string; export declare function pretty(configuration: Configuration, value: Source, formatType: T | string): string; export declare function prettyList(configuration: Configuration, values: Iterable>, formatType: T | string, { separator }?: { separator?: string; }): string; export declare function json(value: Source, formatType: T | string): any; export {};