///
import { Context } from "../context.js";
import { ParsedVaa, SignedVaa } from "@certusone/wormhole-sdk";
export interface StorageContext extends Context {
storage: {
job: RelayJob;
};
}
export interface RelayJob {
id: string;
name: string;
data: {
vaaBytes: Buffer;
parsedVaa: ParsedVaa;
};
attempts: number;
maxAttempts: number;
receivedAt: number;
log(logRow: string): Promise;
updateProgress(progress: number | object): Promise;
}
export type onJobHandler = (job: RelayJob) => Promise;
export interface Storage {
addVaaToQueue(vaa: SignedVaa): Promise;
startWorker(cb: onJobHandler): void;
stopWorker(): Promise;
}