@touca/node
Version:
Touca SDK for JavaScript
59 lines • 1.74 kB
TypeScript
/// <reference types="node" />
import { Builder } from 'flatbuffers';
type ComparisonRuleDouble = {
type: 'number';
mode: 'absolute';
max?: number;
min?: number;
} | {
type: 'number';
mode: 'relative';
max?: number;
percent?: boolean;
};
export type ComparisonRule = ComparisonRuleDouble;
export type ResultJson = boolean | number | string | Record<string, unknown> | Array<ResultJson>;
type SerializeOptions = {
rule?: ComparisonRule;
};
export interface ToucaType {
json(): ResultJson;
serialize(builder: Builder, options?: SerializeOptions): number;
}
export declare class BlobType implements ToucaType {
private readonly value;
private constructor();
static fromFile(reference: string): BlobType;
static fromBytes(content: Buffer): BlobType;
binary(): Buffer;
json(): string;
serialize(builder: Builder): number;
}
export declare class DecimalType implements ToucaType {
private _value;
constructor(value: number);
json(): number;
serialize(builder: Builder, options?: SerializeOptions): number;
private serializeRule;
}
export declare class IntegerType implements ToucaType {
private _value;
constructor(value: number);
increment(): void;
json(): number;
serialize(builder: Builder): number;
}
export declare class VectorType implements ToucaType {
private _value;
add(value: ToucaType): void;
json(): ResultJson;
serialize(builder: Builder): number;
}
export declare class TypeHandler {
private readonly _primitives;
private _types;
transform(value: unknown): ToucaType;
add_serializer(datatype: string, serializer: (x: any) => any): void;
}
export {};
//# sourceMappingURL=types.d.ts.map