Query work
All checks were successful
Lint / lint (push) Successful in 13s

This commit is contained in:
Julien Valverdé
2025-03-11 21:19:57 +01:00
parent ee5dbe3766
commit bc81c443ab
2 changed files with 13 additions and 2 deletions

View File

@@ -0,0 +1,11 @@
import { Effect, type Queue, type Stream } from "effect"
export interface FailureHandler<E> {
readonly failures: Stream.Stream<E>
readonly queue: Queue.Queue<E>
}
export const Tag = <const Id extends string>(id: Id) => <
Self, E = never,
>() => Effect.Tag(id)<Self, FailureHandler<E>>()

View File

@@ -6,11 +6,11 @@ import * as QueryRunner from "./QueryRunner.js"
import type * as QueryService from "./QueryService.js" import type * as QueryService from "./QueryService.js"
export interface QueryExtension<GlobalE> { export interface QueryExtension<HandlerE> {
useQuery<K extends readonly unknown[], A, E, R>( useQuery<K extends readonly unknown[], A, E, R>(
this: ReffuseHelpers.ReffuseHelpers<R>, this: ReffuseHelpers.ReffuseHelpers<R>,
props: UseQueryProps<K, A, E, R>, props: UseQueryProps<K, A, E, R>,
): UseQueryResult<K, A, Exclude<E, GlobalE>> ): UseQueryResult<K, A, Exclude<E, HandlerE>>
} }
export interface UseQueryProps<K extends readonly unknown[], A, E, R> { export interface UseQueryProps<K extends readonly unknown[], A, E, R> {