@whisklabs/grpc
Version:
gRPC generator and http library for typescript
83 lines (82 loc) • 1.69 kB
TypeScript
export type Option = string | boolean | Options | Option[] | Options[] | undefined;
export interface Options {
comment?: string;
[key: string]: Option;
}
export interface Enum {
name: string;
values: {
[key: string]: {
value: number;
options: Options;
comment?: string;
};
};
reserved: Reserved[][];
options: Options;
comment?: string;
}
export interface Field {
name: string;
type: string;
tag: number;
map?: {
from: string;
to: string;
};
oneof?: string;
required: boolean;
optional: boolean;
repeated: boolean;
options: Options;
comment?: string;
}
export type Reserved = number | string | {
from: number;
to: number;
};
export interface Message {
name: string;
enums: Enum[];
extends: Extend[];
extensions: Extension[];
messages: Message[];
options: Options;
fields: Field[];
comment?: string;
reserved: Reserved[][];
}
export interface Extend {
name: string;
message: Message;
}
export interface Extension {
from: number;
to: number;
}
export interface Service {
name: string;
methods: Method[];
options: Options;
comment?: string;
}
export interface Method {
name: string;
inputType: string;
outputType: string;
clientStreaming: boolean;
serverStreaming: boolean;
options: Options;
comment?: string;
}
export interface Schema {
syntax: number;
package?: string;
imports: string[];
enums: Enum[];
messages: Message[];
options: Options;
extends: Extend[];
services: Service[];
comment?: string;
}