import type { KeyValue } from './types.js'; import type { IQueryString } from './IQueryString.js'; /** * Builds and validates URLs and query strings for outbound requests. */ export declare class QueryString implements IQueryString { /** * HTTP schemes allowed for outbound requests. */ private static readonly ALLOWED_PROTOCOLS; /** * Returns whether a URL string is a root-relative path (`/api`), not protocol-relative (`//cdn`). * * @param url - Trimmed URL string. */ private isRootRelativePath; /** * Appends query parameters via string concatenation for root-relative paths. * * @param trimmed - Trimmed base URL that failed absolute URL parsing. * @param enabledParams - Enabled key-value pairs to append. */ private appendQueryFallback; /** * Appends enabled query parameters to a base URL. * * @param baseUrl - Request URL before query string merging. * @param params - Key-value pairs to append as search params. * @returns URL with merged query parameters. */ buildUrl(baseUrl: string, params: KeyValue[]): string; /** * Returns whether a URL is safe to send via fetch: absolute http(s) or root-relative path. * * @param url - Request URL before or after query string merging. * @returns True when the URL uses http/https or is a root-relative path. */ isValidRequestUrl(url: string): boolean; } //# sourceMappingURL=QueryString.d.ts.map