import { CasterFn, Caster } from '../engine/types';
export declare const tuple: {
(casterA: CasterFn): Caster<[A]>;
(casterA: CasterFn, casterB: CasterFn): Caster<[A, B]>;
(casterA: CasterFn, casterB: CasterFn, casterC: CasterFn): Caster<[A, B, C]>;
(casterA: CasterFn, casterB: CasterFn, casterC: CasterFn, casterD: CasterFn): Caster<[A, B, C, D]>;
(casterA: CasterFn, casterB: CasterFn, casterC: CasterFn, casterD: CasterFn, casterE: CasterFn): Caster<[A, B, C, D, E]>;
(casterA: CasterFn, casterB: CasterFn, casterC: CasterFn, casterD: CasterFn, casterE: CasterFn, casterF: CasterFn): Caster<[A, B, C, D, E, F]>;
(casterA: CasterFn, casterB: CasterFn, casterC: CasterFn, casterD: CasterFn, casterE: CasterFn, casterF: CasterFn, casterG: CasterFn): Caster<[A, B, C, D, E, F, G]>;
(casterA: CasterFn, casterB: CasterFn, casterC: CasterFn, casterD: CasterFn, casterE: CasterFn, casterF: CasterFn, casterG: CasterFn, casterH: CasterFn): Caster<[A, B, C, D, E, F, G, H]>;
(casterA: CasterFn, casterB: CasterFn, casterC: CasterFn, casterD: CasterFn, casterE: CasterFn, casterF: CasterFn, casterG: CasterFn, casterH: CasterFn, casterI: CasterFn): Caster<[A, B, C, D, E, F, G, H, I]>;
(casterA: CasterFn, casterB: CasterFn, casterC: CasterFn, casterD: CasterFn, casterE: CasterFn, casterF: CasterFn, casterG: CasterFn, casterH: CasterFn, casterI: CasterFn, casterJ: CasterFn): Caster<[A, B, C, D, E, F, G, H, I, J]>;
(casterA: CasterFn, casterB: CasterFn, casterC: CasterFn, casterD: CasterFn, casterE: CasterFn, casterF: CasterFn, casterG: CasterFn, casterH: CasterFn, casterI: CasterFn, casterJ: CasterFn, casterK: CasterFn): Caster<[A, B, C, D, E, F, G, H, I, J, K]>;
(casterA: CasterFn, casterB: CasterFn, casterC: CasterFn, casterD: CasterFn, casterE: CasterFn, casterF: CasterFn, casterG: CasterFn, casterH: CasterFn, casterI: CasterFn, casterJ: CasterFn, casterK: CasterFn, casterL: CasterFn): Caster<[A, B, C, D, E, F, G, H, I, J, K, L]>;
(casterA: CasterFn, casterB: CasterFn, casterC: CasterFn, casterD: CasterFn, casterE: CasterFn, casterF: CasterFn, casterG: CasterFn, casterH: CasterFn, casterI: CasterFn, casterJ: CasterFn, casterK: CasterFn, casterL: CasterFn, casterM: CasterFn): Caster<[A, B, C, D, E, F, G, H, I, J, K, L, M]>;
(casterA: CasterFn, casterB: CasterFn, casterC: CasterFn, casterD: CasterFn, casterE: CasterFn, casterF: CasterFn, casterG: CasterFn, casterH: CasterFn, casterI: CasterFn, casterJ: CasterFn, casterK: CasterFn, casterL: CasterFn, casterM: CasterFn, casterN: CasterFn): Caster<[A, B, C, D, E, F, G, H, I, J, K, L, M, N]>;
(casterA: CasterFn, casterB: CasterFn, casterC: CasterFn, casterD: CasterFn, casterE: CasterFn, casterF: CasterFn, casterG: CasterFn, casterH: CasterFn, casterI: CasterFn, casterJ: CasterFn, casterK: CasterFn, casterL: CasterFn, casterM: CasterFn, casterN: CasterFn, casterO: CasterFn): Caster<[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O]>;
};