UNPKG

@volverjs/data

Version:

Repository pattern implementation with a tiny HttpClient based on Fetch API.

34 lines (33 loc) 1.37 kB
import type { IStringifyOptions } from 'qs'; import type { ParamMap } from './types'; export type UrlBuilderOptions = IStringifyOptions; export interface UrlBuilderInstance { build: (template: string, params: ParamMap, options?: UrlBuilderOptions) => string; query: (params: ParamMap, options?: UrlBuilderOptions) => string; extend: (options: UrlBuilderOptions) => void; clone: (options?: UrlBuilderOptions) => UrlBuilderInstance; } export declare class UrlBuilder implements UrlBuilderInstance { private _options?; constructor(options?: UrlBuilderOptions); extend(options: UrlBuilderOptions): void; clone(options?: UrlBuilderOptions): UrlBuilder; build(template: string, params: ParamMap, options?: UrlBuilderOptions): string; query(params: ParamMap, options?: UrlBuilderOptions): string; static build(template: string, params?: ParamMap, options?: UrlBuilderOptions): string; static query(params: ParamMap, options?: UrlBuilderOptions): string; static validatePathParam(params: ParamMap, key: string): { valid: boolean; message: string; } | { valid: boolean; message?: undefined; }; static path(template: string, params?: ParamMap): { renderedPath: string; remainingParams: { [x: string]: any; }; }; private static _join; }