import { IBackground, IBorder, IFont, ILineHeight, IMargin, IPadding, IWidthHeight, TFontWeight } from './interfaces/interfaces'; import { Observable } from 'rxjs'; /** * An alternative lodash cloneDeep function. Use it on your own risk. * @param obj Object to be cloned. */ export declare function cloneDeep(obj?: {}): T; /** * An alternative lodash isEqual function. Use it on your own risk. * @param x Object to be compared * @param y the second Object to be compared */ export declare function isEqual(x: object, y: object): boolean; /** * An alternative lodash defaultsDeep function. Use it on your own risk. * @param to The object with default properties * @param sources An array of objects with default properties */ export declare function defaultsDeep(to?: T, ...sources: T[]): T; /** * Create CSS border styles based on {@link IBorder} object. * @param border Border object. * @param rule Most likely you won't need it, but for some cases, it can be changed. Default is: `border`. * * @return CSS Border styles. */ export declare function createBorder(border: IBorder, rule?: string): { [p: string]: string; borderRadius: string; }; /** * Create CSS padding styles based on {@link IPadding} object. * @param padding Padding object. * @param rule Most likely you won't need it, but for some cases, it can be changed. Default is: `padding`. */ export declare function createPadding(padding: IPadding, rule?: string): { [p: string]: string; }; /** * Create CSS margin styles based on {@link IMargin} object. * @param margin Margin object. */ export declare function createMargin(margin: IMargin): { margin: string; }; /** * Create CSS font styles based on {@link IFont} object. * @param font Font object. */ export declare function createFont(font: IFont): { fontFamily: string; fontSize: string; fontStyle: string; fontWeight: number | TFontWeight; }; /** * Create CSS line-height styles based on {@link ILineHeight} object. * @param lineHeight Line-height object. */ export declare function createLineHeight(lineHeight: ILineHeight): { lineHeight: string; }; /** * Create background styles based on {@link IBackground} object. * @param background Background object. */ export declare function createBackground(background: IBackground): string; /** * Create Width or Height styles based on {@link IWidthHeight} object. * @param widthHeight Width or Height object. */ export declare function createWidthHeight(widthHeight: IWidthHeight): string; /** * Convert bytes to KB-YB. * @param bytes Bytes number. * @param decimals How many decimals to be used. Default: 2. */ export declare function bytesToSize(bytes: number, decimals?: number): string; /** * Get a Social Icon path. * @param path Icon path. Ex: facebook.png */ export declare function getAssetByPath(path: string): string; /** * A simple and powerful function that allows to create an `Observable` only when it needs to be used. * @param args Arguments to send to new Observable. */ export declare function deferOf(...args: T[]): Observable;