@skbkontur/cassandra-distributed-task-queue-ui
Version:
.NET library implementing distributed task queue machinery using Apache Cassandra
64 lines (63 loc) • 2.99 kB
TypeScript
import { DateTimeRange } from "../DataTypes/DateTimeRange";
export declare type QueryObject = any;
export interface Mapper<T> {
parse(parsedQueryString: QueryObject): Nullable<T>;
stringify(parsedQueryString: QueryObject, value: Nullable<T>): QueryObject;
}
export declare class PlainValueMapper<T> implements Mapper<T> {
parameterName: string;
constructor(queryStringParameterName: string);
parseString(_parameterValue: string): Nullable<T>;
stringifyValue(_value: Nullable<T>): Nullable<string>;
protected parseEmpty(): Nullable<T>;
parse(parsedQueryString: QueryObject): Nullable<T>;
stringify(parsedQueryString: QueryObject, value: Nullable<T>): QueryObject;
}
export declare class IntegerMapper extends PlainValueMapper<number> {
defaultValue: null | number;
constructor(queryStringParameterName: string, defaultValue: Nullable<number>);
parseString(parameterValue: string): Nullable<number>;
protected parseEmpty(): Nullable<number>;
stringifyValue(value: Nullable<number>): any;
}
export declare class StringArrayMapper extends PlainValueMapper<string[]> {
defaultValue: null | Nullable<string[]>;
constructor(queryStringParameterName: string, defaultValue: Nullable<string[]>);
protected parseEmpty(): Nullable<any[]>;
parseString(parameterValue: Nullable<string>): Nullable<string[]>;
stringifyValue(value: null | undefined | string[]): Nullable<string>;
}
export declare class DateTimeRangeMapper {
private readonly parameterName;
private readonly defaultValue;
constructor(queryStringParameterPrefix: string, defaultValue: null | DateTimeRange);
parseDate(parameterValue: Nullable<string>): Nullable<Date>;
stringifyDate(value: Nullable<Date>): Nullable<string>;
parse(parsedQueryString: QueryObject): Nullable<DateTimeRange>;
stringify(parsedQueryString: QueryObject, value: Nullable<DateTimeRange>): QueryObject;
isDefaultValue(value: DateTimeRange): boolean;
}
export declare class StringMapper extends PlainValueMapper<string> {
defaultValue: null | string;
constructor(queryStringParameterName: string, defaultValue: Nullable<string>);
parseEmpty(): Nullable<string>;
parseString(parameterValue: string): Nullable<string>;
stringifyValue(value: Nullable<string>): any;
}
export declare class SetMapper<T> extends PlainValueMapper<T[]> {
enumValues: {
[key: string]: T;
};
allowNegationOperator: boolean;
static nullValueString: string;
constructor(queryStringParameterName: string, enumValues: {
[key: string]: T;
}, allowNegationOperator: boolean);
parseString(parameterValue: string): Nullable<T[]>;
buildPositiveValuesString(values: T[]): string;
buildNegativeValuesString(values: T[]): string;
stringifyValue(value: Nullable<T[]>): Nullable<string>;
protected getString(value: T): string | null;
protected getKeys(): string[];
protected getEnumValue(repr: string): T;
}