import { DataTransaction, MetaTransaction, NativeTransaction } from '@lens-protocol/domain/entities'; import { ProtocolTransactionRequest, AnyTransactionRequest } from '@lens-protocol/domain/use-cases/transactions'; import { DataTransactionData, ITransactionFactory, MetaTransactionData, NativeTransactionData } from "../ITransactionFactory.js"; export interface ISerializableMetaTransaction extends MetaTransaction { toTransactionData(): MetaTransactionData; } export interface ISerializableNativeTransaction extends NativeTransaction { toTransactionData(): NativeTransactionData; } export interface ISerializableDataTransaction extends DataTransaction { toTransactionData(): DataTransactionData; } export interface ISerializableTransactionFactory extends ITransactionFactory { createMetaTransaction(init: MetaTransactionData): ISerializableMetaTransaction; createNativeTransaction(init: NativeTransactionData): ISerializableNativeTransaction; createDataTransaction(init: DataTransactionData): ISerializableDataTransaction; }