UNPKG

maskdata

Version:

Node module to mask various kinds of data in the required formats

107 lines (95 loc) 3.32 kB
declare module 'maskdata' { export interface CardMaskOptions { maskWith?: string; unmaskedStartDigits?: number; unmaskedEndDigits?: number; } export interface EmailMask2Options { maskWith?: string; unmaskedStartCharactersBeforeAt?: number; unmaskedEndCharactersAfterAt?: number; maskAtTheRate?: boolean; } export interface JsonMaskOptions { maskWith?: string; fields?: string[]; maxMaskedCharactersStr?: number; } export interface PasswordMaskOptions { maskWith?: string; maxMaskedCharacters?: number; fixedOutputLength?: undefined | number; unmaskedStartCharacters?: number; unmaskedEndCharacters?: number; } export interface StringMaskV2Options { maskWith?: string; maxMaskedCharacters?: number; fixedOutputLength?: undefined | number; unmaskedStartCharacters?: number; unmaskedEndCharacters?: number; } export interface GenericStringMaskOptions { config?: StringMaskV2Options; fields: string[]; } export interface PhoneMaskOptions { maskWith?: string; unmaskedStartDigits?: number; unmaskedEndDigits?: number; } export interface StringMaskOptions { maskWith?: string; maskOnlyFirstOccurance?: boolean; values?: string[]; maskAll?: boolean; maskSpace?: boolean; maxMaskedCharacters?: number; } export interface UuidMaskOptions { maskWith?: string; unmaskedStartCharacters?: number; unmaskedEndCharacters?: number; } export interface JwtMaskOptions { maskWith?: string; maxMaskedCharacters?: number; maskDot?: boolean; maskHeader?: boolean; maskPayload?: boolean; maskSignature?: boolean; } export interface JsonMask2Configs { cardMaskOptions?: CardMaskOptions; cardFields?: string[]; emailMaskOptions?: EmailMask2Options; emailFields?: string[]; passwordMaskOptions?: PasswordMaskOptions; passwordFields?: string[]; phoneMaskOptions?: PhoneMaskOptions; phoneFields?: string[]; stringMaskOptions?: StringMaskOptions; stringFields?: string[]; uuidMaskOptions?: UuidMaskOptions; uuidFields?: string[]; jwtMaskOptions?: JwtMaskOptions; jwtFields?: string[]; genericStrings?: GenericStringMaskOptions[]; } export function maskPassword(password?: string, options?: PasswordMaskOptions): string; export function maskJSON2<T extends object>(json?: T, options?: JsonMask2Configs): T; export function maskPhone(phone?: string, options?: PhoneMaskOptions): string; export function maskEmail2(email?: string, options?: EmailMask2Options): string; export function maskCard(cardNumber?: string, options?: CardMaskOptions): string; /** * @deprecated since version 1.3.3 * This function will be removed in future versions. * Use `maskStringV2` instead. */ export function maskString(str?: string, options?: StringMaskOptions): string; export function maskStringV2(str?: string, options?: StringMaskV2Options): string; export function maskUuid(uuid?: string, options?: UuidMaskOptions): string; export function maskJwt(jwt?: string, options?: JwtMaskOptions): string; export function getInnerProperty(object: object, field: string): any; export function replaceValue(object: object, field: string, value: any): object; }