UNPKG

celery-ts

Version:
23 lines (22 loc) 1.19 kB
/// <reference types="node" /> import { Queries } from "./uri"; export declare class QueryParser<T extends object> { private readonly functions; constructor(descriptors: Array<QueryDescriptor<any>>); parse(query: Queries, init: T): T; private static assertParsers; private static assertTargets; private static intoPairs; } export interface QueryDescriptor<T> { readonly parser?: Parser<T>; readonly source: string; readonly target?: string; } export declare type Parser<T> = (raw: string | Array<string>) => T; export declare const createBooleanQueryDescriptor: (source: string, target?: string | undefined) => QueryDescriptor<boolean>; export declare const createIntegerQueryDescriptor: (source: string, target?: string | undefined) => QueryDescriptor<number>; export declare const createPathArrayQueryDescriptor: (source: string, target?: string | undefined) => QueryDescriptor<Array<Buffer>>; export declare const createPathQueryDescriptor: (source: string, target?: string | undefined) => QueryDescriptor<Buffer>; export declare const asScalar: <T>(scalarOrArray: T | T[]) => T; export declare const asArray: <T>(scalarOrArray: T | T[]) => T[];