/*! * Copyright (c) Microsoft Corporation and contributors. All rights reserved. * Licensed under the MIT License. */ /** * This file tracks types that are serialized in summaries / snapshots, and thus can't easily be changed * Use caustion when making changes and consider backward and forward compatibility of your changes! */ import type { Serializable } from "@fluidframework/datastore-definitions/internal"; import type { IMergeTreeOp } from "@fluidframework/merge-tree/internal"; export declare enum MatrixOp { spliceCols = 0, spliceRows = 1, set = 2 } export declare enum SnapshotPath { rows = "rows", cols = "cols", cells = "cells" } /** * A matrix cell value may be undefined (indicating an empty cell) or any serializable type, * excluding null. (However, nulls may be embedded inside objects and arrays.) * @legacy @beta */ export type MatrixItem = Serializable> | undefined; export interface ISetOp { type: MatrixOp.set; target?: never; row: number; col: number; value: MatrixItem; fwwMode?: boolean; } export type VectorOp = IMergeTreeOp & Record<"target", SnapshotPath.rows | SnapshotPath.cols>; export type MatrixSetOrVectorOp = VectorOp | ISetOp; //# sourceMappingURL=ops.d.ts.map