UNPKG

libmodulor

Version:

A TypeScript library to create platform-agnostic applications

17 lines (16 loc) 1.19 kB
import { Method, Service, type Type } from 'protobufjs'; import type { AppName } from '../../../app/index.js'; import { type UCDef, type UCInput, type UCOPIBase, type UCTransportContract } from '../../../uc/index.js'; export interface ServiceTypes { input: Type; op0: Type | null; opi0: Type | null; op1: Type | null; opi1: Type | null; output: Type; outputParts: Type | null; } export declare function service(appName: AppName): Service; export declare function serviceMethod<I extends UCInput | undefined = undefined, OPI0 extends UCOPIBase | undefined = undefined, OPI1 extends UCOPIBase | undefined = undefined>(ucd: UCDef<I, OPI0, OPI1>, serviceTypes: ServiceTypes, contract: UCTransportContract): Method; export declare function serviceMethodStream<I extends UCInput | undefined = undefined, OPI0 extends UCOPIBase | undefined = undefined, OPI1 extends UCOPIBase | undefined = undefined>(ucd: UCDef<I, OPI0, OPI1>): [boolean, boolean]; export declare function serviceTypes<I extends UCInput | undefined = undefined, OPI0 extends UCOPIBase | undefined = undefined, OPI1 extends UCOPIBase | undefined = undefined>(ucd: UCDef<I, OPI0, OPI1>): ServiceTypes;