UNPKG

yc-types

Version:

TypeScript types and interfaces for YellowCard protobuf definitions

174 lines (173 loc) 5.82 kB
import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; import { Metadata } from "./common"; export declare const protobufPackage = "pb"; export interface VaccinationRecord { recordId: string; vaccineId: string; diseaseId: string; date: Date | undefined; batchNumberId: string; validUntil: Date | undefined; userId: string; } export interface YellowCard { cardId: string; cardNumber: string; holderDataHash: string; issuedDate: Date | undefined; issuedById: string; status: string; vaccinations: VaccinationRecord[]; createdAt: Date | undefined; updatedAt: Date | undefined; } export interface IssueCardRequest { cardId: string; cardNumber: string; holderDataHash: string; issuedById: string; } export interface IssueCardResponse { success: boolean; message: string; cardId: string; } export interface GetAllCardsResponse { status: number; cards: YellowCard[]; meta: Metadata | undefined; } export interface ReadCardRequest { cardId: string; } export interface ReadCardResponse { card: YellowCard | undefined; } export interface AddVaccinationRequest { cardId: string; recordId: string; vaccineId: string; diseaseId: string; vaccinationDate: string; batchNumberId: string; validUntil: string; userId: string; } export interface AddVaccinationResponse { success: boolean; message: string; } export interface UpdateCardStatusRequest { cardId: string; status: string; } export interface UpdateCardStatusResponse { success: boolean; message: string; } export interface VerifyCardRequest { cardId: string; holderDataHash: string; } export interface VerifyCardResponse { isValid: boolean; message: string; } export interface CardExistsRequest { cardId: string; } export interface CardExistsResponse { exists: boolean; } export interface GetCardRequest { cardNumber: string; } export interface GetCardResponse { status: number; message: string; card: YellowCard | undefined; } export interface ListCardsRequest { limit: number; offset: number; } export interface ListCardsResponse { status: number; message: string; cards: YellowCard[]; totalCount: number; } export interface GetVaccinationsRequest { cardNumber: string; } export interface GetVaccinationsResponse { status: number; message: string; vaccinations: VaccinationRecord[]; } export interface RevokeCardRequest { cardNumber: string; reason: string; } export interface RevokeCardResponse { status: number; message: string; } export interface ListVaccinesRequest { } export interface ListVaccinesResponse { status: number; message: string; } export interface ListDiseasesRequest { } export interface ListDiseasesResponse { status: number; message: string; } export declare const VaccinationRecord: MessageFns<VaccinationRecord>; export declare const YellowCard: MessageFns<YellowCard>; export declare const IssueCardRequest: MessageFns<IssueCardRequest>; export declare const IssueCardResponse: MessageFns<IssueCardResponse>; export declare const GetAllCardsResponse: MessageFns<GetAllCardsResponse>; export declare const ReadCardRequest: MessageFns<ReadCardRequest>; export declare const ReadCardResponse: MessageFns<ReadCardResponse>; export declare const AddVaccinationRequest: MessageFns<AddVaccinationRequest>; export declare const AddVaccinationResponse: MessageFns<AddVaccinationResponse>; export declare const UpdateCardStatusRequest: MessageFns<UpdateCardStatusRequest>; export declare const UpdateCardStatusResponse: MessageFns<UpdateCardStatusResponse>; export declare const VerifyCardRequest: MessageFns<VerifyCardRequest>; export declare const VerifyCardResponse: MessageFns<VerifyCardResponse>; export declare const CardExistsRequest: MessageFns<CardExistsRequest>; export declare const CardExistsResponse: MessageFns<CardExistsResponse>; export declare const GetCardRequest: MessageFns<GetCardRequest>; export declare const GetCardResponse: MessageFns<GetCardResponse>; export declare const ListCardsRequest: MessageFns<ListCardsRequest>; export declare const ListCardsResponse: MessageFns<ListCardsResponse>; export declare const GetVaccinationsRequest: MessageFns<GetVaccinationsRequest>; export declare const GetVaccinationsResponse: MessageFns<GetVaccinationsResponse>; export declare const RevokeCardRequest: MessageFns<RevokeCardRequest>; export declare const RevokeCardResponse: MessageFns<RevokeCardResponse>; export declare const ListVaccinesRequest: MessageFns<ListVaccinesRequest>; export declare const ListVaccinesResponse: MessageFns<ListVaccinesResponse>; export declare const ListDiseasesRequest: MessageFns<ListDiseasesRequest>; export declare const ListDiseasesResponse: MessageFns<ListDiseasesResponse>; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial<T> = T extends Builtin ? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]>; } : Partial<T>; type KeysOfUnion<T> = T extends T ? keyof T : never; export type Exact<P, I extends P> = P extends Builtin ? P : P & { [K in keyof P]: Exact<P[K], I[K]>; } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never; }; export interface MessageFns<T> { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; fromJSON(object: any): T; toJSON(message: T): unknown; create<I extends Exact<DeepPartial<T>, I>>(base?: I): T; fromPartial<I extends Exact<DeepPartial<T>, I>>(object: I): T; } export {};