synapse-react-client
Version:
[](https://badge.fury.io/js/synapse-react-client) [](https://github.com/prettier/prettie
28 lines • 1.69 kB
TypeScript
import { Query, QueryBundleRequest } from '@sage-bionetworks/synapse-types';
/**
* Updates the url with the components' new search params. Stores only the
* differences between currentQuery and initQuery, compressed with gzip and base64-encoded.
* If the queries are equal, the search param will be removed.
* @param componentName
* @param componentIndex
* @param currentQuery - The current query state, or null to remove the param
* @param initQuery - The initial query state to compute diff against
*/
export declare function updateUrlWithNewSearchParam(componentName: string, componentIndex: number | undefined, currentQuery: Query | null, initQuery: Query | null): Promise<void>;
/**
* Retrieves a query request from the URL by applying the stored diff to the initial query.
* @param componentIndex
* @param initQuery - The initial query to apply the diff to
* @returns A partial QueryBundleRequest with the reconstructed query, or undefined if no diff is stored
*/
export declare function getQueryRequestFromLink(componentIndex: number, initQuery: Query): Promise<Partial<QueryBundleRequest> | undefined>;
/**
* Generates a URL with a compressed query diff parameter.
* @param path - The base path for the URL
* @param componentIndex - The component index (e.g., 0)
* @param currentQuery - The query to encode
* @param initQuery - The initial/default query to compute the diff against
* @returns A Promise that resolves to the full URL with compressed query parameter
*/
export declare function generateCompressedQueryURL(path: string, componentIndex: number, currentQuery: Query, initQuery: Query): Promise<string>;
//# sourceMappingURL=deepLinkingUtils.d.ts.map