import type { AnyRequest, Request } from '../Request' import type { Either } from '@principia/base/Either' import type { Maybe } from '@principia/base/Maybe' import type { URef } from '@principia/base/Ref' import type { _A, _E } from '@principia/base/util/types' export const BlockedRequestTypeId = Symbol('@principia/query/internal/BlockedRequest') export type BlockedRequestTypeId = typeof BlockedRequestTypeId export class BlockedRequest { readonly _A!: () => A readonly [BlockedRequestTypeId]: BlockedRequestTypeId = BlockedRequestTypeId constructor(readonly request: Request<_E, _A>, readonly result: URef, _A>>>) {} } export function make(request: A, result: URef, _A>>>): BlockedRequest { return new BlockedRequest(request, result) }