import type { UseEtherbaseSourceProps } from "./types/etherbase";
import type { Argument } from "./types/events";
import type { EtherstoreState } from "./types/state";
export default function useEtherbaseSource({ sourceAddress, }: UseEtherbaseSourceProps): {
    eventDefinitions: {
        name: string;
        args: Argument[];
    }[];
    fetchEventDefinitions: () => Promise<void>;
    registerEvent: (event: {
        name: string;
        args: Argument[];
    }) => Promise<void>;
    emitEvent: ({ name, args }: {
        name: string;
        args: Record<string, unknown>;
    }) => Promise<void>;
    setValue: (state: EtherstoreState) => Promise<void>;
};
