topkat-utils
Version:
A comprehensive collection of TypeScript/JavaScript utility functions for common programming tasks. Includes validation, object manipulation, date handling, string formatting, and more. Zero dependencies, fully typed, and optimized for performance.
37 lines (36 loc) • 1.07 kB
TypeScript
import { Color, ErrorOptions } from './types';
type TerminalTheme = {
primary: Color;
shade1?: Color;
shade2?: Color;
bgColor?: Color;
fontColor?: Color;
pageWidth?: number;
debugModeColor?: Color;
};
type TerminalConfig = {
noColor: boolean;
theme: TerminalTheme;
};
type TerminalConfigRequired = {
noColor: boolean;
theme: Required<TerminalTheme>;
};
export type TopkatUtilConfig = {
env: string;
isProd: boolean;
nbOfLogsToKeep: number;
customTypes: object;
preprocessLog?: (log: string) => any;
onError?: (msg: string, extraInfos: ErrorOptions) => any;
terminal: TerminalConfig;
};
/** Allow dynamic changing of config */
export declare function configFn(): Required<TopkatUtilConfig & {
terminal: TerminalConfigRequired;
}>;
export declare function registerConfig(customConfig: RecursivePartial<TopkatUtilConfig>): void;
type RecursivePartial<T> = {
[P in keyof T]?: T[P] extends (infer U)[] ? RecursivePartial<U>[] : T[P] extends object ? RecursivePartial<T[P]> : T[P];
};
export {};