import type { CompactRemoveOp } from '../codec/compact/types';
import { AbstractOp } from './AbstractOp';
import type { OperationRemove } from '../types';
import { type Path } from '@jsonjoy.com/json-pointer';
import { OPCODE } from '../constants';
/**
 * @category JSON Patch
 */
export declare class OpRemove extends AbstractOp<'remove'> {
    readonly oldValue: unknown;
    constructor(path: Path, oldValue: unknown);
    op(): "remove";
    code(): OPCODE;
    apply(doc: unknown): {
        doc: unknown;
        old: {} | null;
    };
    toJson(parent?: AbstractOp): OperationRemove;
    toCompact(parent: undefined | AbstractOp, verbose: boolean): CompactRemoveOp;
}
