import { type Callback } from '../apis/definitions.ts'; import { type BeforeDeserializationHook, type BeforeHookPayloadType, type BeforeSerializationHook, type Deserializers, type Serializers } from '../clients/serde.ts'; import { type MessageToProduce } from '../protocol/records.ts'; export interface SchemaRegistry { get(id: Id): Schema | undefined; fetch(id: Id, callback?: (error?: Error) => void): void | Promise; getSchemaId(payload: Buffer | MessageToProduce, type?: BeforeHookPayloadType): Id; getSerializers(): Serializers; getDeserializers(): Deserializers; getBeforeSerializationHook(): BeforeSerializationHook; getBeforeDeserializationHook(): BeforeDeserializationHook; } export declare function runAsyncSeries(operation: (item: V, cb: Callback) => void | Promise, collection: V[], index: number, callback: Callback): void; export declare class AbstractSchemaRegistry implements SchemaRegistry { get(_: Id): Schema | undefined; fetch(_i: unknown, _c?: (error?: Error) => void): void | Promise; getSchemaId(_p: Buffer | MessageToProduce, _t?: BeforeHookPayloadType): Id; getSerializers(): Serializers; getDeserializers(): Deserializers; getBeforeSerializationHook(): BeforeSerializationHook; getBeforeDeserializationHook(): BeforeDeserializationHook; }