import { isNumber } from 'tsfn' ; import type { TAnyObject } from 'tsfn' ; import queryString from 'query-string' ; export const encodeUrl = ( obj ) : string => queryString . stringify ( obj ) ; export const decodeUrl = ( hash ) : TAnyObject => { const res = queryString . parse ( hash , { parseBooleans : true , parseNumbers : true , } ) ; if ( isNumber ( res . selectedSetIndex ) ) { res . selectedSetIndex = String ( res . selectedSetIndex ) ; } return res ; } ;