import { type SmartFilter } from "../smartFilter.js"; import { type IBlockSerializerV1, type SerializedSmartFilterV1 } from "./v1/smartFilterSerialization.types.js"; /** * Serializes SmartFilters using the latest SmartFilter serialization version. * The caller passes in information necessary to serialize the blocks in the SmartFilter. * This allows the caller to provide custom serializers for blocks beyond the core blocks. */ export declare class SmartFilterSerializer { private readonly _blockSerializers; /** * Creates a new SmartFilterSerializer * @param blocksUsingDefaultSerialization - A list of the blockType of blocks which can use default serialization (they only have ConnectionPoint properties and no constructor parameters) * @param additionalBlockSerializers - An array of block serializers to use, beyond those for the core blocks */ constructor(blocksUsingDefaultSerialization: string[], additionalBlockSerializers: IBlockSerializerV1[]); /** * Serializes a SmartFilter to a JSON object of the latest version * @param smartFilter - The SmartFilter to serialize * @returns The serialized SmartFilter */ serialize(smartFilter: SmartFilter): SerializedSmartFilterV1; } //# sourceMappingURL=smartFilterSerializer.d.ts.map