import { Config } from "../config/builder/config" import { Address, Effects } from "../types" import { Utils } from "../util/utils" import { AddressReceipt } from "./AddressReceipt" export type SetInterfacesReceipt = Record export type SetInterfaces< Store, Vault, ConfigInput extends Record, Output extends Record, > = (opts: { effects: Effects input: null | ConfigInput utils: Utils }) => Promise export type SetupInterfaces = < Store, Vault, ConfigInput extends Record, Output extends Record, >( config: Config, fn: SetInterfaces, ) => SetInterfaces export const NO_INTERFACE_CHANGES = {} as SetInterfacesReceipt export const setupInterfaces: SetupInterfaces = (_config, fn) => fn