import { type Token } from "../core.js"; import { type MailboxRef } from "../refs.js"; import type { MailboxHandle } from "./mailbox.js"; export type MemberSpec = { /** * Free-form metadata stored on the member — the complete map, replacing * whatever is live. Omitting it leaves live metadata untouched; pass `null` * to clear it. * * Name, email and connector ids are owned by the sync; `meta` and `mailboxes` * are the fields a caller can write. */ meta?: Record | null; /** * Cargo mailboxes attached to this member. Each mailbox belongs to at most * one member. Omitting the field leaves live attachments untouched; pass `[]` * to detach all. */ mailboxes?: (MailboxHandle | MailboxRef)[]; }; export type MemberHandle = { readonly email: string; readonly uuid: Token; readonly resource: "member"; }; export declare function defineMember(email: string, spec?: MemberSpec): MemberHandle; //# sourceMappingURL=member.d.ts.map