/**
 * Obj 轉 QueryString
 * ex: {keyword: 'jack', sex: 'F'} -> ?keyword=jack&sex=F
 *
 * @param queryObj key value 物件
 */
export declare function encodeQueryString(queryObj?: {
    [key: string]: string | number | boolean | undefined;
}): string;
/**
 * 解析 Search QueryString 轉成 物件
 * ex: ?keyword=jack&sex=F -> {keyword: 'jack', sex: 'F'}
 *
 * @param val QueryString 字串
 */
export declare function decodeQueryString<T>(val?: string): T | undefined;
/**
 * 取得網域
 * 若非正確網址
 * @param url
 */
export declare function getProtocolDomain(url: string): string;
/**
 * 取得主網域(二級域名)
 * 若非正確網址, 例如是IP位置就會回傳空白
 * @param hostName
 */
export declare function getMainDomain(hostName: string): string;
/**
 * 取得子網域(最後一段)
 * 若非正確網址, 例如是IP位置就會回傳空白
 * @param hostName
 */
export declare function getSubDomain(hostName: string): string;
export declare function urlJoin(...args: string[] | string[][]): string;
