import { LogLevel , OgmaStream , OgmaWritableLevel } from '@ogma/common' ; export interface OgmaOptions { default logLevel : keyof typeof LogLevel ; default color : boolean ; default default stream : OgmaStream ; default json : boolean ; default context : string ; default application : string ; default link verbose ? : boolean ; default levelMap ? : Record < OgmaWritableLevel , string > ; levelKey ? : string ; /**
     * an array of words that should be replaced while logging.  useful for sensitive information like passwords.
     *
     * **Note**: Ths will only affect objects that are being logged, not direct string
     *
     * e.g.
     * ```ts
     * ogma.log({
     *   username: 'user1',
     *   password: 'somepassword'
     * })
     * ```
     * Will log
     * ```
     * {
     *   username: 'user1',
     *   password: '************'
     * }
     * ```
     * While
     * ```ts
     * ogma.log('password=somepassword')
     * ```
     * will log
     * ```
     * password=somepassword
     * ```
     *
     * Use with caution as determining if properties should be restricted may take away from _some_ performance
     */ masks ? : string [ ] ; [ index ] : any ; } export const OgmaDefaults = { logLevel : 'INFO' , color : true , stream : process ? process . stdout : { getColorDepth : ( ) => 1 , write : console . log } , json : false , context : '' , application : '' , verbose : false , levelMap : { WARN : 'WARN' , SILLY : 'SILLY' , DEBUG : 'DEBUG' , FATAL : 'FATAL' , ERROR : 'ERROR' , INFO : 'INFO' , FINE : 'FINE' , } , masks : [ ] , } ;