@lens-protocol/react
Version:
Interacting with the Lens Protocol API using React.
23 lines (22 loc) • 1.68 kB
TypeScript
import { JustProtocolRequest, TransactionKind } from '@lens-protocol/domain/entities';
import { IResettableTransactionGateway } from '@lens-protocol/domain/use-cases/authentication';
import { IMetaTransactionNonceGateway, IPendingTransactionGateway, NewTransactionsSubscriber, AnyTransactionRequest } from '@lens-protocol/domain/use-cases/transactions';
import { IStorage } from '@lens-protocol/storage';
import { TransactionList } from "../schemas/transactions.js";
import { ISerializableDataTransaction, ISerializableMetaTransaction, ISerializableNativeTransaction, ISerializableTransactionFactory } from "./ISerializableTransactionFactory.js";
type ISerializableTransaction<T extends AnyTransactionRequest> = ISerializableNativeTransaction<T> | ISerializableMetaTransaction<JustProtocolRequest<T>> | ISerializableDataTransaction<JustProtocolRequest<T>>;
export declare class PendingTransactionGateway implements IPendingTransactionGateway<AnyTransactionRequest>, IMetaTransactionNonceGateway, IResettableTransactionGateway {
private readonly storage;
private readonly transactionFactory;
private cache?;
constructor(storage: IStorage<TransactionList>, transactionFactory: ISerializableTransactionFactory);
save(tx: ISerializableTransaction<AnyTransactionRequest>): Promise<void>;
remove(id: string): Promise<void>;
reset(): Promise<void>;
getAll(): Promise<readonly ISerializableTransaction<AnyTransactionRequest>[]>;
getNextMetaTransactionNonceFor(kind: TransactionKind): Promise<number | undefined>;
subscribe(subscriber: NewTransactionsSubscriber<AnyTransactionRequest>): void;
private update;
private toEntity;
}
export {};