import { TransactionsProposedEvent } from "@uma/contracts-node/typechain/core/ethers/OptimisticGovernor"; import { Logger, MonitoringParams } from "./common"; import { RulesParameters, SafeSnapSafe, SnapshotProposalGraphql } from "./SnapshotVerification"; interface SupportedParameters { parsedRules: RulesParameters; currency: string; bond: string; } interface SupportedModules { [ogAddress: string]: SupportedParameters; } export interface SupportedProposal { event: TransactionsProposedEvent; parameters: SupportedParameters; } export interface DisputableProposal extends SupportedProposal { verificationResult: { verified: false; error: string; }; } export interface SnapshotProposalExpanded extends Omit { safe: SafeSnapSafe; } export declare const getSupportedSnapshotProposals: (logger: typeof Logger, supportedModules: SupportedModules, params: MonitoringParams) => Promise<{ supportedProposalsExpanded: Array; supportedProposalsOriginal: Record; }>; export declare const filterPotentialProposals: (supportedProposals: SnapshotProposalExpanded[], onChainProposals: TransactionsProposedEvent[], params: MonitoringParams) => SnapshotProposalExpanded[]; export declare const filterUnblockedProposals: (potentialProposals: SnapshotProposalExpanded[], onChainProposals: TransactionsProposedEvent[], params: MonitoringParams) => Promise; export declare const filterVerifiedProposals: (proposalsExpanded: SnapshotProposalExpanded[], proposalsOriginal: Record, supportedModules: SupportedModules, params: MonitoringParams) => Promise; export declare const submitProposals: (logger: typeof Logger, proposals: SnapshotProposalExpanded[], supportedModules: SupportedModules, params: MonitoringParams) => Promise; export declare const proposeTransactions: (logger: typeof Logger, params: MonitoringParams) => Promise; export declare const disputeProposals: (logger: typeof Logger, params: MonitoringParams) => Promise; export declare const executeProposals: (logger: typeof Logger, params: MonitoringParams) => Promise; export {};