mjstl
Version:
JS USEABLE DATEUTIL HELPER LIB
53 lines (52 loc) • 1.68 kB
TypeScript
import { IDeviceUtil, IGeoUtil, IIdUtil, ISafeSani, MArray, NumeralUtil, PhoneUtil, IDash, IAdx, IMSearch } from "./types";
export {};
type MER<T, K extends string | number | symbol> = Omit<T, K>;
type MESearchBuilderFunctionType<T, K extends string | number | symbol> = {
asStr: () => MESearchBuilderFunctions<MER<T, K>>;
asNum: () => MESearchBuilderFunctions<MER<T, K>>;
asBool: () => MESearchBuilderFunctions<MER<T, K>>;
asDate: () => MESearchBuilderFunctions<MER<T, K>>;
asArr: () => MESearchBuilderFunctions<MER<T, K>>;
};
type MESearchBuilderFunctions<T> = {
[K in keyof T as K]: () => MESearchBuilderFunctionType<T, K>;
} & {
go: (query: any) => T[];
};
type MESearchBuilderLike<T> = MESearchBuilderFunctions<T>;
export type MESearchBuilder<T> = MESearchBuilderLike<T>;
export interface ISaniSafer {
path: (url: string) => string;
input: (value: string) => string;
dtPath: (url: string) => boolean;
dtInput: (value: string) => boolean;
}
export declare enum SfSortCompareTypeMap {
"String" = "String",
"Number" = "Number",
"Date" = "Date",
"Boolean" = "Boolean"
}
declare global {
interface Array<T> extends MArray<T> {
}
}
export declare const mtl: {
Numeral: NumeralUtil;
Phone: PhoneUtil;
Geo: IGeoUtil;
Id: IIdUtil;
Device: IDeviceUtil;
SafeSani: ISafeSani;
Config: {
setLocale: (value: string) => void;
setCountryCode: (value: string) => void;
};
Crypt: {
encrypt: (screetKey: string, data: string) => string;
decrypt: (screetKey: string, data: string) => string;
};
Dash: IDash;
Xad: IAdx;
Search: IMSearch;
};