import { Result } from '@kizahasi/result'; import { r, i, d, ComposeAndTransformError, Operation, PositiveInt, ApplyError } from '@kizahasi/ot-core'; import { NonEmptyString } from '../nonEmptyString'; import * as TextTwoWayOperation from './twoWayOperation'; export type DownOperation = Operation; export type DownOperationUnit = { t: typeof r; r: number; } | { t: typeof i; i: number; } | { t: typeof d; d: string; }; export declare const applyBack: ({ nextState, downOperation, }: { nextState: string; downOperation: DownOperation; }) => Result>; export declare const applyBackAndRestore: ({ nextState, downOperation, }: { nextState: string; downOperation: DownOperation; }) => Result<{ prevState: string; restored: TextTwoWayOperation.TwoWayOperation; }, ApplyError>; export declare const compose: ({ first, second, }: { first: DownOperation; second: DownOperation; }) => Result>; export declare const invert: (source: DownOperation) => Operation; export declare const toUnit: (source: DownOperation) => DownOperationUnit[]; export declare const ofUnit: (source: ReadonlyArray) => DownOperation; //# sourceMappingURL=downOperation.d.ts.map