UNPKG

anux-common

Version:

[![Build Status](https://travis-ci.com/Anupheaus/anux-common.svg?branch=master)](https://travis-ci.com/Anupheaus/anux-common) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/dd0e0bd3a96247a5a78c02a812f949f8)](https://www.codacy.com/app/Anuphea

19 lines (18 loc) 635 B
import { AnyObject } from '../extensions'; interface SettingsFromOptions<T> { defaultValue?: T; isRequired?: boolean; transform?(value: string): T; } interface SettingsFrom { env(key: string): string; env<T>(key: string): T; env(key: string): string; env(key: string, options: SettingsFromOptions<string>): string; env<T>(key: string, options: SettingsFromOptions<T>): T; preset: { readonly mode: 'production' | 'development'; }; } export declare const createSettings: <TSettings extends AnyObject>(delegate: (from: SettingsFrom) => TSettings) => TSettings; export {};