@creditkarma/thrift-server-core
Version:
Thrift core library in TypeScript
54 lines (53 loc) • 2.33 kB
TypeScript
/// <reference types="node" />
import { TTransport } from '../transports';
import { IInt64, Int64, IThriftField, IThriftList, IThriftMap, IThriftMessage, IThriftSet, IThriftStruct, LogFunction, MessageType, TType } from '../types';
export declare abstract class TProtocol {
protected transport: TTransport;
protected logger: LogFunction;
protected requestId: number | null;
constructor(trans: TTransport, logger?: LogFunction);
getTransport(): TTransport;
flush(): Buffer;
abstract writeMessageBegin(name: string, type: MessageType, seqid: number): void;
abstract writeMessageEnd(): void;
abstract writeStructBegin(name: string): void;
abstract writeStructEnd(): void;
abstract writeFieldBegin(name: string, type: TType, id: number): void;
abstract writeFieldEnd(): void;
abstract writeFieldStop(): void;
abstract writeMapBegin(keyType: TType, valueType: TType, size: number): void;
abstract writeMapEnd(): void;
abstract writeListBegin(elementType: TType, size: number): void;
abstract writeListEnd(): void;
abstract writeSetBegin(elementType: TType, size: number): void;
abstract writeSetEnd(): void;
abstract writeBool(bool: boolean): void;
abstract writeByte(b: number): void;
abstract writeI16(i16: number): void;
abstract writeI32(i32: number): void;
abstract writeI64(i64: number | string | IInt64): void;
abstract writeDouble(dbl: number): void;
abstract writeString(arg: string): void;
abstract writeBinary(arg: string | Buffer): void;
abstract readMessageBegin(): IThriftMessage;
abstract readMessageEnd(): void;
abstract readStructBegin(): IThriftStruct;
abstract readStructEnd(): void;
abstract readFieldBegin(): IThriftField;
abstract readFieldEnd(): void;
abstract readMapBegin(): IThriftMap;
abstract readMapEnd(): void;
abstract readListBegin(): IThriftList;
abstract readListEnd(): void;
abstract readSetBegin(): IThriftSet;
abstract readSetEnd(): void;
abstract readBool(): boolean;
abstract readByte(): number;
abstract readI16(): number;
abstract readI32(): number;
abstract readI64(): Int64;
abstract readDouble(): number;
abstract readBinary(): Buffer;
abstract readString(): string;
abstract skip(type: TType): void;
}