import { Schema } from 'effect'; import type { PeerChannelFactory } from '../../domain/peer-channel/index.js'; import type { EffectRunner } from '../../platform/effect-runner/index.js'; import type { OutboxOutcome } from '../entries/index.js'; declare const doorbellMessage: Schema.Struct<{ readonly version: Schema.Literal<1>; readonly id: Schema.String; readonly outcome: Schema.Literals; }>; export type DoorbellMessage = typeof doorbellMessage.Type; export declare const makeDoorbell: (args: { syncName: string; factory: PeerChannelFactory | null; runner: EffectRunner; onMessage: (message: DoorbellMessage) => void; }) => { ring: (id: string, outcome: 'enqueued' | OutboxOutcome) => Promise; close: () => Promise; }; export {}; //# sourceMappingURL=doorbell.d.ts.map