interface RpcProcedure extends String { } declare type RpcProcedurePayload = TProcedure extends RpcProcedure ? TPayload : never; declare type RpcProcedureResult = TProcedure extends RpcProcedure ? TResult : never; export { RpcProcedure, RpcProcedurePayload, RpcProcedureResult };