UNPKG

webgl-dsl

Version:

Thin functional WebGL wrapper with strong typed GLSL DSL

17 lines (16 loc) 11.5 kB
import { Disposable } from '../disposable'; export declare function uses<T1 extends Disposable, R>(create1: () => T1, callback: (v1: T1) => R): R; export declare function uses<T1 extends Disposable, T2 extends Disposable, R>(create1: () => T1, create2: (v1: T1) => T2, callback: (v1: T1, v2: T2) => R): R; export declare function uses<T1 extends Disposable, T2 extends Disposable, T3 extends Disposable, R>(create1: () => T1, create2: (v1: T1) => T2, create3: (v1: T1, v2: T2) => T3, callback: (v1: T1, v2: T2, v3: T3) => R): R; export declare function uses<T1 extends Disposable, T2 extends Disposable, T3 extends Disposable, T4 extends Disposable, R>(create1: () => T1, create2: (v1: T1) => T2, create3: (v1: T1, v2: T2) => T3, create4: (v1: T1, v2: T2, v3: T3) => T4, callback: (v1: T1, v2: T2, v3: T3, v4: T4) => R): R; export declare function uses<T1 extends Disposable, T2 extends Disposable, T3 extends Disposable, T4 extends Disposable, T5 extends Disposable, R>(create1: () => T1, create2: (v1: T1) => T2, create3: (v1: T1, v2: T2) => T3, create4: (v1: T1, v2: T2, v3: T3) => T4, create5: (v1: T1, v2: T2, v3: T3, v4: T4) => T5, callback: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5) => R): R; export declare function uses<T1 extends Disposable, T2 extends Disposable, T3 extends Disposable, T4 extends Disposable, T5 extends Disposable, T6 extends Disposable, R>(create1: () => T1, create2: (v1: T1) => T2, create3: (v1: T1, v2: T2) => T3, create4: (v1: T1, v2: T2, v3: T3) => T4, create5: (v1: T1, v2: T2, v3: T3, v4: T4) => T5, create6: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5) => T6, callback: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6) => R): R; export declare function uses<T1 extends Disposable, T2 extends Disposable, T3 extends Disposable, T4 extends Disposable, T5 extends Disposable, T6 extends Disposable, T7 extends Disposable, R>(create1: () => T1, create2: (v1: T1) => T2, create3: (v1: T1, v2: T2) => T3, create4: (v1: T1, v2: T2, v3: T3) => T4, create5: (v1: T1, v2: T2, v3: T3, v4: T4) => T5, create6: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5) => T6, create7: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6) => T7, callback: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7) => R): R; export declare function uses<T1 extends Disposable, T2 extends Disposable, T3 extends Disposable, T4 extends Disposable, T5 extends Disposable, T6 extends Disposable, T7 extends Disposable, T8 extends Disposable, R>(create1: () => T1, create2: (v1: T1) => T2, create3: (v1: T1, v2: T2) => T3, create4: (v1: T1, v2: T2, v3: T3) => T4, create5: (v1: T1, v2: T2, v3: T3, v4: T4) => T5, create6: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5) => T6, create7: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6) => T7, create8: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7) => T8, callback: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8) => R): R; export declare function uses<T1 extends Disposable, T2 extends Disposable, T3 extends Disposable, T4 extends Disposable, T5 extends Disposable, T6 extends Disposable, T7 extends Disposable, T8 extends Disposable, T9 extends Disposable, R>(create1: () => T1, create2: (v1: T1) => T2, create3: (v1: T1, v2: T2) => T3, create4: (v1: T1, v2: T2, v3: T3) => T4, create5: (v1: T1, v2: T2, v3: T3, v4: T4) => T5, create6: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5) => T6, create7: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6) => T7, create8: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7) => T8, create9: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8) => T9, callback: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9) => R): R; export declare function uses<T1 extends Disposable, T2 extends Disposable, T3 extends Disposable, T4 extends Disposable, T5 extends Disposable, T6 extends Disposable, T7 extends Disposable, T8 extends Disposable, T9 extends Disposable, T10 extends Disposable, R>(create1: () => T1, create2: (v1: T1) => T2, create3: (v1: T1, v2: T2) => T3, create4: (v1: T1, v2: T2, v3: T3) => T4, create5: (v1: T1, v2: T2, v3: T3, v4: T4) => T5, create6: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5) => T6, create7: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6) => T7, create8: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7) => T8, create9: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8) => T9, create10: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9) => T10, callback: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10) => R): R; export declare function uses<T1 extends Disposable, T2 extends Disposable, T3 extends Disposable, T4 extends Disposable, T5 extends Disposable, T6 extends Disposable, T7 extends Disposable, T8 extends Disposable, T9 extends Disposable, T10 extends Disposable, T11 extends Disposable, R>(create1: () => T1, create2: (v1: T1) => T2, create3: (v1: T1, v2: T2) => T3, create4: (v1: T1, v2: T2, v3: T3) => T4, create5: (v1: T1, v2: T2, v3: T3, v4: T4) => T5, create6: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5) => T6, create7: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6) => T7, create8: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7) => T8, create9: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8) => T9, create10: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9) => T10, create11: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10) => T11, callback: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10, v11: T11) => R): R; export declare function uses<T1 extends Disposable, T2 extends Disposable, T3 extends Disposable, T4 extends Disposable, T5 extends Disposable, T6 extends Disposable, T7 extends Disposable, T8 extends Disposable, T9 extends Disposable, T10 extends Disposable, T11 extends Disposable, T12 extends Disposable, R>(create1: () => T1, create2: (v1: T1) => T2, create3: (v1: T1, v2: T2) => T3, create4: (v1: T1, v2: T2, v3: T3) => T4, create5: (v1: T1, v2: T2, v3: T3, v4: T4) => T5, create6: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5) => T6, create7: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6) => T7, create8: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7) => T8, create9: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8) => T9, create10: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9) => T10, create11: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10) => T11, create12: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10, v11: T11) => T12, callback: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10, v11: T11, v12: T12) => R): R; export declare function uses<T1 extends Disposable, T2 extends Disposable, T3 extends Disposable, T4 extends Disposable, T5 extends Disposable, T6 extends Disposable, T7 extends Disposable, T8 extends Disposable, T9 extends Disposable, T10 extends Disposable, T11 extends Disposable, T12 extends Disposable, T13 extends Disposable, R>(create1: () => T1, create2: (v1: T1) => T2, create3: (v1: T1, v2: T2) => T3, create4: (v1: T1, v2: T2, v3: T3) => T4, create5: (v1: T1, v2: T2, v3: T3, v4: T4) => T5, create6: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5) => T6, create7: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6) => T7, create8: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7) => T8, create9: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8) => T9, create10: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9) => T10, create11: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10) => T11, create12: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10, v11: T11) => T12, create13: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10, v11: T11, v12: T12) => T13, callback: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10, v11: T11, v12: T12, v13: T13) => R): R; export declare function uses<T1 extends Disposable, T2 extends Disposable, T3 extends Disposable, T4 extends Disposable, T5 extends Disposable, T6 extends Disposable, T7 extends Disposable, T8 extends Disposable, T9 extends Disposable, T10 extends Disposable, T11 extends Disposable, T12 extends Disposable, T13 extends Disposable, T14 extends Disposable, R>(create1: () => T1, create2: (v1: T1) => T2, create3: (v1: T1, v2: T2) => T3, create4: (v1: T1, v2: T2, v3: T3) => T4, create5: (v1: T1, v2: T2, v3: T3, v4: T4) => T5, create6: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5) => T6, create7: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6) => T7, create8: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7) => T8, create9: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8) => T9, create10: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9) => T10, create11: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10) => T11, create12: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10, v11: T11) => T12, create13: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10, v11: T11, v12: T12) => T13, create14: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10, v11: T11, v12: T12, v13: T13) => T14, callback: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10, v11: T11, v12: T12, v13: T13, v14: T14) => R): R; export declare function uses<T1 extends Disposable, T2 extends Disposable, T3 extends Disposable, T4 extends Disposable, T5 extends Disposable, T6 extends Disposable, T7 extends Disposable, T8 extends Disposable, T9 extends Disposable, T10 extends Disposable, T11 extends Disposable, T12 extends Disposable, T13 extends Disposable, T14 extends Disposable, T15 extends Disposable, T16 extends Disposable, R>(create1: () => T1, create2: (v1: T1) => T2, create3: (v1: T1, v2: T2) => T3, create4: (v1: T1, v2: T2, v3: T3) => T4, create5: (v1: T1, v2: T2, v3: T3, v4: T4) => T5, create6: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5) => T6, create7: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6) => T7, create8: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7) => T8, create9: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8) => T9, create10: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9) => T10, create11: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10) => T11, create12: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10, v11: T11) => T12, create13: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10, v11: T11, v12: T12) => T13, create14: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10, v11: T11, v12: T12, v13: T13) => T14, create15: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10, v11: T11, v12: T12, v13: T13, v14: T14) => T15, create16: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10, v11: T11, v12: T12, v13: T13, v14: T14, v15: T15) => T16, callback: (v1: T1, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6, v7: T7, v8: T8, v9: T9, v10: T10, v11: T11, v12: T12, v13: T13, v14: T14, v15: T15, v16: T16) => R): R;