import { type $Typed, type InferInput, type Main, type RecordSchema, type Restricted } from '@atproto/lex-schema'; import { com } from './lexicons/index.js'; import type { RecordKeyOptions } from './util.js'; export type WriteOperation = $Typed | $Typed | $Typed; export type WriteOperationCreateOptions = RecordKeyOptions; export type WriteOperationUpdateOptions = RecordKeyOptions; export type WriteOperationDeleteOptions = RecordKeyOptions; export type WriteOperationsFactory = (helper: WriteOperationHelper) => Iterable; export declare class WriteOperationHelper { private constructor(); create(ns: NonNullable extends WriteOperationCreateOptions ? Main : Restricted<'This record type requires an "options" argument'>, input: Omit, '$type'>): $Typed; create(ns: Main, input: Omit, '$type'>, options: WriteOperationCreateOptions): $Typed; update(ns: NonNullable extends WriteOperationUpdateOptions ? Main : Restricted<'This record type requires an "options" argument'>, input: Omit, '$type'>): $Typed; update(ns: Main, input: Omit, '$type'>, options: WriteOperationUpdateOptions): $Typed; delete(ns: NonNullable extends WriteOperationDeleteOptions ? Main : Restricted<'This record type requires an "options" argument'>): $Typed; delete(ns: Main, options: WriteOperationDeleteOptions): $Typed; static build(factory: WriteOperationsFactory): WriteOperation[]; } //# sourceMappingURL=write-operation-builder.d.ts.map