import { SelectionTarget, DeleteBehavior, TargetLocator } from './types/address.js'; import { TextMutationReceipt } from './types/receipt.js'; import { MutationOptions } from './types/mutation-plan.types.js'; import { InlineRunPatch } from './format/inline-run-patch.js'; import { StoryLocator } from './types/story.types.js'; export type SelectionDeleteRequest = TargetLocator & { kind: 'delete'; target?: SelectionTarget; ref?: string; behavior: DeleteBehavior; /** Story locator threaded from the operation input's `in` field. */ in?: StoryLocator; }; export type SelectionReplaceRequest = TargetLocator & { kind: 'replace'; target?: SelectionTarget; ref?: string; text: string; /** Story locator threaded from the operation input's `in` field. */ in?: StoryLocator; }; export type SelectionInsertRequest = TargetLocator & { kind: 'insert'; target?: SelectionTarget; ref?: string; text: string; /** Story locator threaded from the operation input's `in` field. */ in?: StoryLocator; }; export type SelectionFormatRequest = TargetLocator & { kind: 'format'; target?: SelectionTarget; ref?: string; inline: InlineRunPatch; /** Story locator threaded from the operation input's `in` field. */ in?: StoryLocator; }; export type SelectionMutationRequest = SelectionDeleteRequest | SelectionReplaceRequest | SelectionInsertRequest | SelectionFormatRequest; /** * Adapter that the super-editor plan engine implements for selection-based * mutations. Delete, replace-text, insert-with-locator, and format.apply go * through this single interface. */ export interface SelectionMutationAdapter { execute(request: SelectionMutationRequest, options?: MutationOptions): TextMutationReceipt; } //# sourceMappingURL=selection-mutation.d.ts.map