import type { ModuleHttpRouteRegistrar as ContractModuleHttpRouteRegistrar, ModuleRouteDefinitionInput as ContractModuleRouteDefinitionInput, ModuleRouteHandler as ContractModuleRouteHandler, ModuleRouteHandlerContext as ContractModuleRouteHandlerContext, ModuleDatabaseExecutor, } from "@ekklesia/contracts"; /** What a route handler receives. `services.database` is the module's ABI v1 executor, or `never` * for a module that declares no database. */ export type ModuleRouteHandlerContext< Database extends ModuleDatabaseExecutor = ModuleDatabaseExecutor, > = ContractModuleRouteHandlerContext; export type ModuleRouteHandler = ContractModuleRouteHandler; export type ModuleRouteDefinitionInput< Database extends ModuleDatabaseExecutor = ModuleDatabaseExecutor, > = ContractModuleRouteDefinitionInput; export type ModuleHttpRouteRegistrar< Database extends ModuleDatabaseExecutor = ModuleDatabaseExecutor, > = ContractModuleHttpRouteRegistrar;