import type { Cache } from '../Cache'; import type { DataSource } from '../DataSource'; import type { DataSourceAspect } from '../DataSourceAspect'; import type { Described } from '../Described'; import type { Query } from '../Query'; import type { Request } from '../Request'; import type { QueryContext } from './QueryContext'; import type { FIO } from '@principia/base/IO'; import type * as Ca from '@principia/base/IO/Cause'; import type { URef } from '@principia/base/Ref'; import * as E from '@principia/base/Either'; import * as I from '@principia/base/IO'; import * as M from '@principia/base/Maybe'; export declare class Effect { readonly query: Query; readonly _tag = "Effect"; constructor(query: Query); } export declare function effect(query: Query): Continue; export declare class Get { readonly io: FIO; readonly _tag = "Get"; constructor(io: FIO); } export declare function get(io: FIO): Continue; export declare type Continue = Effect | Get; export declare function matchCauseQuery_(cont: Continue, onFailure: (cause: Ca.Cause) => Query, onSuccess: (a: A) => Query): Continue; export declare function matchCauseQuery(onFailure: (cause: Ca.Cause) => Query, onSuccess: (a: A) => Query): (ma: Continue) => Continue; export declare function mapError_(fa: Continue, f: (e: E) => E1): Continue; export declare function mapError(f: (e: E) => E1): (ma: Continue) => Continue; export declare function crossWith_(fa: Continue, fb: Continue, f: (a: A, b: B) => C): Continue; export declare function crossWith(fb: Continue, f: (a: A, b: B) => C): (fa: Continue) => Continue; export declare function map_(fa: Continue, f: (a: A) => B): Continue; export declare function map(f: (a: A) => B): (fa: Continue) => Continue; export declare function crossWithC_(fa: Continue, fb: Continue, f: (a: A, b: B) => C): Continue; export declare function crossWithC(fb: Continue, f: (a: A, b: B) => C): (fa: Continue) => Continue; export declare function crossWithBatched_(fa: Continue, fb: Continue, f: (a: A, b: B) => C): Continue; export declare function crossWithBatched(fb: Continue, f: (a: A, b: B) => C): (fa: Continue) => Continue; export declare function mapDataSources_(fa: Continue, f: DataSourceAspect): Continue; export declare function mapDataSources(f: DataSourceAspect): (fa: Continue) => Continue; export declare function make, B>(request: A, dataSource: DataSource, ref: URef>>): Continue; export declare function mapQuery_(fa: Continue, f: (a: A) => Query): Continue; export declare function mapQuery(f: (a: A) => Query): (fa: Continue) => Continue; export declare function gives_(ra: Continue, f: Described<(r0: R0) => R>): Continue; export declare function gives(f: Described<(r0: R0) => R>): (ra: Continue) => Continue; export declare function runContext_(ma: Continue, queryContext: QueryContext): I.IO; export declare function runCache_(ma: Continue, cache: Cache): I.IO; export declare function runCache(cache: Cache): (ma: Continue) => I.IO; //# sourceMappingURL=Continue.d.ts.map