UNPKG

tarantoolscript

Version:

TypeScript definitions for Tarantool Lua API.

677 lines (620 loc) 29.9 kB
/** @noSelfInFile */ import { IterParams } from './Basic'; import { FunIterator } from './FunIterator'; /** * Return the n-th element of array. * @param n An element number (indexed starting from 1, like Lua tables). * @param value An array. * @returns The n-th element of array. * @see {@link https://luafun.github.io/slicing.html#fun.nth} */ export declare function nth<T>(n: number, value: T[]): T | undefined; /** * This function returns the n-th element of original iterator. * If the iterator does not have `n` items then `nil` is returned. * @param n A sequential number (indexed starting from 1, like Lua tables). * @param value An iterator. * @returns The n-th element of iterator. * @see {@link https://luafun.github.io/slicing.html#fun.nth} */ export declare function nth<TState, TReturn extends unknown[]>( n: number, value: FunIterator<TState, TReturn> ): LuaMultiReturn<TReturn>; /** * Return the n-th key-value pair of map. * @param n An element number (indexed starting from 1, like Lua tables). * @param value A map. * @returns The n-th key-value pair of map. * @see {@link https://luafun.github.io/slicing.html#fun.nth} */ export declare function nth<TValue>( n: number, value: Record<string, TValue> ): LuaMultiReturn<[string, TValue] | [undefined]>; /** * Return the n-th symbol of string. * @param n An element number (indexed starting from 1, like Lua tables). * @param value A string value. * @returns The n-th symbol of string. * @see {@link https://luafun.github.io/slicing.html#fun.nth} */ export declare function nth(n: number, value: string): string | undefined; /** * This function returns the n-th element of `gen`, `param`, `state` iterator. * If the iterator does not have `n` items then `nil` is returned. * @param n A sequential number (indexed starting from 1, like Lua tables). * @param gen A generating function that can produce a next value on each iteration. * Usually returns a new state and iteration values (multireturn). * @param param A permanent (constant) parameter of the generating function. * It is used to create a specific instance of the generating function. For example, the table itself in the `ipairs` case. * @param state A some transient state of an iterator that is changed after each iteration. * @returns The n-th element of iterator. * @see {@link https://luafun.github.io/slicing.html#fun.nth} */ export declare function nth<TParam, TState, TReturn extends unknown[]>( n: number, ...iterParams: [...IterParams<TParam, TState, TReturn>] ): LuaMultiReturn<TReturn>; /** * Extract the first element of an array. If value is empty then an error is raised. * @param value An array. * @returns A first element of an array. * @see {@link https://luafun.github.io/slicing.html#fun.head} */ export declare function head<T>(value: T[]): T; /** * Extract the first element of iterator. If the iterator is empty then an error is raised. * @param value An iterator. * @returns A first element of iterator. * @see {@link https://luafun.github.io/slicing.html#fun.head} */ export declare function head<TState, TReturn extends unknown[]>( value: FunIterator<TState, TReturn> ): LuaMultiReturn<TReturn>; /** * Extract the first key-value pair of map. If value is empty then an error is raised. * @param value A map. * @returns A first key-value pair of map. * @see {@link https://luafun.github.io/slicing.html#fun.head} */ export declare function head<TValue>( value: Record<string, TValue> ): LuaMultiReturn<[string, TValue]>; /** * Extract the first symbol of string. If value is empty then an error is raised. * @param value A string value. * @returns A first symbol of string. * * @see {@link https://luafun.github.io/slicing.html#fun.head} */ export declare function head(value: string): string; /** * Extract the first element of `gen`, `param`, `state` iterator. If the iterator is empty then an error is raised. * @param gen A generating function that can produce a next value on each iteration. * Usually returns a new state and iteration values (multireturn). * @param param A permanent (constant) parameter of the generating function. * It is used to create a specific instance of the generating function. For example, the table itself in the `ipairs` case. * @param state A some transient state of an iterator that is changed after each iteration. * @returns A first element of `gen`, `param`, `state` iterator. * @see {@link https://luafun.github.io/slicing.html#fun.head} */ export declare function head<TParam, TState, TReturn extends unknown[]>( ...iterParams: [...IterParams<TParam, TState, TReturn>] ): LuaMultiReturn<TReturn>; export declare const car: typeof head; /** * Return a copy of array without its first element. * If the array is empty then an empty iterator is returned. * @param value An array. * @returns `gen`, `param`, `state` iterator without a first element. * @see {@link https://luafun.github.io/slicing.html#fun.tail} */ export declare function tail<T>(value: T[]): FunIterator<number, [T]>; /** * Return a copy of original iterator without its first element. * If the iterator is empty then an empty iterator is returned. * @param value An iterator. * @returns Iterator's copy without a first element. * @see {@link https://luafun.github.io/slicing.html#fun.tail} */ export declare function tail<TState, TReturn extends unknown[]>( value: FunIterator<TState, TReturn> ): FunIterator<TState, TReturn>; /** * Return a copy of map without its first element. * If the map is empty then an empty iterator is returned. * @param value A map. * @returns `gen`, `param`, `state` iterator without a first element. * @see {@link https://luafun.github.io/slicing.html#fun.tail} */ export declare function tail<TValue>( value: Record<string, TValue> ): FunIterator<string, [string, TValue]>; /** * Return a copy of string without its first symbol. * If the string is empty then an empty iterator is returned. * @param value A string. * @returns `gen`, `param`, `state` iterator without a first element. * @see {@link https://luafun.github.io/slicing.html#fun.tail} */ export declare function tail(value: string): FunIterator<number, [string]>; /** * Return a copy of `gen`, `param`, `state` iterator without its first element. * If the iterator is empty then an empty iterator is returned. * @param gen A generating function that can produce a next value on each iteration. * Usually returns a new state and iteration values (multireturn). * @param param A permanent (constant) parameter of the generating function. * It is used to create a specific instance of the generating function. For example, the table itself in the `ipairs` case. * @param state A some transient state of an iterator that is changed after each iteration. * For example, the array index in the `ipairs` case. * @returns `gen`, `param`, `state` without a first element. * @see {@link https://luafun.github.io/slicing.html#fun.tail} */ export declare function tail<TParam, TState, TReturn extends unknown[]>( ...iterParams: [...IterParams<TParam, TState, TReturn>] ): FunIterator<TState, TReturn>; export declare const cdr: typeof tail; /** * Return an iterator on the subsequence of first `n` elements of array. * @param n A number of elements to take. * @param value An array. * @returns An iterator on the subsequence of first `n` elements. * @see {@link https://luafun.github.io/slicing.html#fun.take_n} */ export declare function take_n<T>( n: number, value: T[] ): FunIterator<number, [T]>; /** * Return an iterator on the subsequence of first `n` elements. * @param n A number of elements to take. * @param iterator An iterator. * @returns An iterator on the subsequence of first `n` elements. * @see {@link https://luafun.github.io/slicing.html#fun.take_n} */ export declare function take_n<TState, TReturn extends unknown[]>( n: number, value: FunIterator<TState, TReturn> ): FunIterator<TState, TReturn>; /** * Return an iterator on the subsequence of first `n` key-value pairs of map. * @param n A number of elements to take. * @param value A map. * @returns An iterator on the subsequence of first `n` key-value paris. * @see {@link https://luafun.github.io/slicing.html#fun.take_n} */ export declare function take_n<TValue>( n: number, value: Record<string, TValue> ): FunIterator<string, [string, TValue]>; /** * Return an iterator on the subsequence of first `n` symbols of string. * @param n A number of symbols to take. * @param value A string. * @returns An iterator on the subsequence of first `n` symbols. * @see {@link https://luafun.github.io/slicing.html#fun.take_n} */ export declare function take_n( n: number, value: string ): FunIterator<number, [string]>; /** * Return an iterator on the subsequence of first `n` elements. * @param n A number of elements to take. * @param gen A generating function that can produce a next value on each iteration. * Usually returns a new state and iteration values (multireturn). * @param param A permanent (constant) parameter of the generating function. * It is used to create a specific instance of the generating function. For example, the table itself in the `ipairs` case. * @param state A some transient state of an iterator that is changed after each iteration. * For example, the array index in the `ipairs` case. * @returns An iterator on the subsequence of first `n` elements. * @see {@link https://luafun.github.io/slicing.html#fun.take_n} */ export declare function take_n<TParam, TState, TReturn extends unknown[]>( n: number, ...iterParams: [...IterParams<TParam, TState, TReturn>] ): FunIterator<TState, TReturn>; /** * Return an iterator on the subsequence of first elements satisfying the condition. * @param predicate Function that accepts an element of iteration * and returns `true` if that element should be included into result iterator. * @value An array to iterate for. * @returns An iterator on the subsequence of first elements satisfying the condition. * @see {@link https://luafun.github.io/slicing.html#fun.take_while} */ export declare function take_while<T>( predicate: (this: void, element: T) => boolean, value: T[] ): FunIterator<number, [T]>; /** * Returns an iterator on the longest prefix of elements that satisfy predicate. * @param predicate Function that accepts elements of iteration * and returns `true` if that elements should be included into result iterator. * @param value An iterator. * @returns An iterator on the longest prefix elements that satisfy predicate. * @see {@link https://luafun.github.io/slicing.html#fun.take_while} */ export declare function take_while<TState, TReturn extends unknown[]>( predicate: (this: void, ...params: TReturn) => boolean, value: FunIterator<TState, TReturn> ): FunIterator<TState, TReturn>; /** * Returns an iterator on the subsequence of first key-value pairs satisfying the condition. * @param predicate Function that accepts a key-value pair of iteration * and returns `true` if that pair should be included into result iterator. * @param value A map to iterate for. * @returns An iterator on the subsequence of first key-value pairs satisfying the condition. * @see {@link https://luafun.github.io/slicing.html#fun.take_while} */ export declare function take_while<TValue>( predicate: (this: void, key: string, value: TValue) => boolean, value: Record<string, TValue> ): FunIterator<string, [string, TValue]>; /** * Returns an iterator on the subsequence of first symbols satisfying the condition. * @param predicate Function that accepts a symbol of iteration * and returns `true` if that symbol should be included into result iterator. * @param value A string to iterate for. * @returns An iterator on the subsequence of first symbols satisfying the condition. * @see {@link https://luafun.github.io/slicing.html#fun.take_while} */ export declare function take_while( predicate: (this: void, element: string) => boolean, value: string ): FunIterator<number, [string]>; /** * Returns an iterator on the longest prefix of `gen`, `param`, `state` elements that satisfy predicate. * @param predicate Function that accepts elements of iteration * and returns `true` if that elements should be included into result iterator. * @param gen A generating function that can produce a next value on each iteration. * Usually returns a new state and iteration values (multireturn). * @param param A permanent (constant) parameter of the generating function. * It is used to create a specific instance of the generating function. For example, the table itself in the `ipairs` case. * @param state A some transient state of an iterator that is changed after each iteration. * For example, the array index in the `ipairs` case. * @returns An iterator on the longest prefix elements that satisfy predicate. * @see {@link https://luafun.github.io/slicing.html#fun.take_while} */ export declare function take_while<TParam, TState, TReturn extends unknown[]>( predicate: (this: void, ...params: TReturn) => boolean, ...iterParams: [...IterParams<TParam, TState, TReturn>] ): FunIterator<TState, TReturn>; export declare const take: typeof take_n & typeof take_while; /** * Return an iterator after skipping first `n` elements of array. * @param n A number of elements to skip. * @param value An array. * @returns An iterator after skipping first `n` elements. * @see {@link https://luafun.github.io/slicing.html#fun.drop_n} */ export declare function drop_n<T>( n: number, value: T[] ): FunIterator<number, [T]>; /** * Return an iterator after skipping first `n` elements. * @param n A number of elements to skip. * @param value An iterator. * @returns An iterator after skipping first `n` elements. * @see {@link https://luafun.github.io/slicing.html#fun.drop_n} */ export declare function drop_n<TState, TReturn extends unknown[]>( n: number, value: FunIterator<TState, TReturn> ): FunIterator<TState, TReturn>; /** * Return an iterator after skipping first `n` key-value pairs of map. * @param n A number of elements to skip. * @param value A map. * @returns An iterator after skipping first `n` key-value paris. * @see {@link https://luafun.github.io/slicing.html#fun.drop_n} */ export declare function drop_n<TValue>( n: number, value: Record<string, TValue> ): FunIterator<string, [string, TValue]>; /** * Return an iterator after skipping first `n` symbols of string. * @param n A number of symbols to skip. * @param value A string. * @returns An iterator after skipping first `n` symbols. * @see {@link https://luafun.github.io/slicing.html#fun.drop_n} */ export declare function drop_n( n: number, value: string ): FunIterator<string, [string]>; /** * Return an iterator after skipping first `n` elements. * @param n A number of elements to skip. * @param gen A generating function that can produce a next value on each iteration. * Usually returns a new state and iteration values (multireturn). * @param param A permanent (constant) parameter of the generating function. * It is used to create a specific instance of the generating function. For example, the table itself in the `ipairs` case. * @param state A some transient state of an iterator that is changed after each iteration. * For example, the array index in the `ipairs` case. * @returns An iterator after skipping first `n` elements. * @see {@link https://luafun.github.io/slicing.html#fun.drop_n} */ export declare function drop_n<TParam, TState, TReturn extends unknown[]>( n: number, ...iterParams: [...IterParams<TParam, TState, TReturn>] ): FunIterator<TState, TReturn>; /** * Return an iterator after skipping the longest prefix of elements satisfying the condition. * @param predicate Function that accepts an element of iteration * and returns `true` if that element should be skipped. * @value An array to iterate for. * @returns An iterator after skipping the longest prefix of elements satisfying the condition. * @see {@link https://luafun.github.io/slicing.html#fun.drop_while} */ export declare function drop_while<T>( predicate: (this: void, element: T) => boolean, value: T[] ): FunIterator<number, [T]>; /** * Returns an iterator after skipping the longest prefix of `gen`, `param`, `state` elements that satisfy predicate. * @param predicate Function that accepts elements of iteration * and returns `true` if that elements should be skipped. * @param value An iterator. * @returns An iterator after skipping the longest prefix of elements that satisfy predicate. * @see {@link https://luafun.github.io/slicing.html#fun.drop_while} */ export declare function drop_while<TState, TReturn extends unknown[]>( predicate: (this: void, ...params: TReturn) => boolean, value: FunIterator<TState, TReturn> ): FunIterator<TState, TReturn>; /** * Returns an iterator after skipping the longest prefix of first key-value pairs satisfying the condition. * @param predicate Function that accepts a key-value pair of iteration * and returns `true` if that pair should be skipped. * @param value A map to iterate for. * @returns An iterator after skipping the longest prefix of first key-value pairs satisfying the condition. * @see {@link https://luafun.github.io/slicing.html#fun.drop_while} */ export declare function drop_while<TValue>( predicate: (this: void, key: string, value: TValue) => boolean, value: Record<string, TValue> ): FunIterator<string, [string, TValue]>; /** * Returns an iterator after skipping the longest prefix of first symbols satisfying the condition. * @param predicate Function that accepts a symbol of iteration * and returns `true` if that symbol should be skipped. * @param value A string to iterate for. * @returns An iterator after skipping the longest prefix of first symbols satisfying the condition. * @see {@link https://luafun.github.io/slicing.html#fun.drop_while} */ export declare function drop_while( predicate: (this: void, element: string) => boolean, value: string ): FunIterator<number, [string]>; /** * Returns an iterator after skipping the longest prefix of `gen`, `param`, `state` elements that satisfy predicate. * @param predicate Function that accepts elements of iteration * and returns `true` if that elements should be skipped. * @param gen A generating function that can produce a next value on each iteration. * Usually returns a new state and iteration values (multireturn). * @param param A permanent (constant) parameter of the generating function. * It is used to create a specific instance of the generating function. For example, the table itself in the `ipairs` case. * @param state A some transient state of an iterator that is changed after each iteration. * For example, the array index in the `ipairs` case. * @returns An iterator after skipping the longest prefix of elements that satisfy predicate. * @see {@link https://luafun.github.io/slicing.html#fun.drop_while} */ export declare function drop_while<TParam, TState, TReturn extends unknown[]>( predicate: (this: void, ...params: TReturn) => boolean, ...iterParams: [...IterParams<TParam, TState, TReturn>] ): FunIterator<TState, TReturn>; export declare const drop: typeof drop_n & typeof drop_while; /** * Return an iterator pair where the first operates on the subsequence of first `n` elements (possibly empty) * of array and second operates the remainder of array. * @param n A number of elements to span. * @param value An array. * @returns An iterator pair (first `n` elements and remainder). * @see {@link https://luafun.github.io/slicing.html#fun.span} */ export declare function span<T>( n: number, value: T[] ): LuaMultiReturn<[FunIterator<number, [T]>, FunIterator<number, [T]>]>; /** * Return an iterator pair where the first operates on the subsequence of first `n` elements (possibly empty) * of iterator and second operates the remainder of iterator. * @param n A number of elements to span. * @param value An iterator. * @returns An iterator pair (first `n` elements and remainder). * @see {@link https://luafun.github.io/slicing.html#fun.span} */ export declare function span<TState, TReturn extends unknown[]>( n: number, value: FunIterator<TState, TReturn> ): LuaMultiReturn<[FunIterator<TState, TReturn>, FunIterator<TState, TReturn>]>; /** * Return an iterator pair where the first operates on the subsequence of first `n` key-value pairs (possibly empty) * of map and second operates the remainder of map. * @param n A number of elements to span. * @param value A map. * @returns An iterator pair (first `n` key-value pairs and remainder). * @see {@link https://luafun.github.io/slicing.html#fun.span} */ export declare function span<TValue>( n: number, value: Record<string, TValue> ): LuaMultiReturn< [FunIterator<string, [string, TValue]>, FunIterator<string, [string, TValue]>] >; /** * Return an iterator pair where the first operates on the subsequence of first `n` symbols (possibly empty) * of string and second operates the remainder of string. * @param n A number of elements to span. * @param value A string. * @returns An iterator pair (first `n` symbols and remainder). * @see {@link https://luafun.github.io/slicing.html#fun.span} */ export declare function span( n: number, value: string ): LuaMultiReturn< [FunIterator<string, [string]>, FunIterator<string, [string]>] >; /** * Return an iterator pair where the first operates on the subsequence of first `n` elements (possibly empty) * of `gen`, `param`, `state` iterator and second operates the remainder of gen, param, state iterator. * @param n A number of elements to span. * @param gen A generating function that can produce a next value on each iteration. * Usually returns a new state and iteration values (multireturn). * @param param A permanent (constant) parameter of the generating function. * It is used to create a specific instance of the generating function. For example, the table itself in the `ipairs` case. * @param state A some transient state of an iterator that is changed after each iteration. * For example, the array index in the `ipairs` case. * @returns An iterator pair (first `n` elements and remainder). * @see {@link https://luafun.github.io/slicing.html#fun.span} */ export declare function span<TParam, TState, TReturn extends unknown[]>( n: number, ...iterParams: [...IterParams<TParam, TState, TReturn>] ): LuaMultiReturn<[FunIterator<TState, TReturn>, FunIterator<TState, TReturn>]>; /** * Return an iterator pair where the first operates on the subsequence of the longest prefix of elements (possibly empty) * of array that satisfy predicate and second operates the remainder of array. * @param predicate Function that accepts an element of iteration * and returns `true` if that element satisfy the condition. * @param value An array. * @returns An iterator pair. * @see {@link https://luafun.github.io/slicing.html#fun.span} */ export declare function span<T>( predicate: (this: void, element: T) => boolean, value: T[] ): LuaMultiReturn<[FunIterator<number, [T]>, FunIterator<number, [T]>]>; /** * Return an iterator pair where the first operates on the longest prefix (possibly empty) * of original iterator of elements that satisfy predicate * and second operates the remainder of original iterator. * @param predicate Function that accepts an element of iteration and returns `true` if it satisfy the condition. * @param value An iterator. * @returns An iterator pair. * @see {@link https://luafun.github.io/slicing.html#fun.span} */ export declare function span<TState, TReturn extends unknown[]>( predicate: (this: void, ...element: TReturn) => boolean, value: FunIterator<TState, TReturn> ): LuaMultiReturn<[FunIterator<TState, TReturn>, FunIterator<TState, TReturn>]>; /** * Return an iterator pair where the first operates on the subsequence of the longest prefix of key-value pairs (possibly empty) * of map that satisfy predicate and second operates the remainder of map. * @param predicate Function that accepts an key and value of key-value pair * and returns `true` if their values satisfy the condition. * @param value A map. * @returns An iterator pair. * @see {@link https://luafun.github.io/slicing.html#fun.span} */ export declare function span<TValue>( predicate: (this: void, key: string, value: TValue) => boolean, value: Record<string, TValue> ): LuaMultiReturn< [FunIterator<string, [string, TValue]>, FunIterator<string, [string, TValue]>] >; /** * Return an iterator pair where the first operates on the subsequence of the longest prefix of symbols (possibly empty) * of string that satisfy predicate and second operates the remainder of string. * @param predicate Function that accepts a symbol and returns `true` if it satisfy the condition. * @param value A string. * @returns An iterator pair. * @see {@link https://luafun.github.io/slicing.html#fun.span} */ export declare function span( predicate: (this: void, element: string) => boolean, value: string ): LuaMultiReturn< [FunIterator<number, [string]>, FunIterator<number, [string]>] >; /** * Return an iterator pair where the first operates on the longest prefix (possibly empty) * of `gen`, `param`, `state` iterator of elements that satisfy predicate * and second operates the remainder of `gen`, `param`, `state` iterator. * @param predicate Function that accepts an element of iteration and returns `true` if it satisfy the condition. * @param gen A generating function that can produce a next value on each iteration. * Usually returns a new state and iteration values (multireturn). * @param param A permanent (constant) parameter of the generating function. * It is used to create a specific instance of the generating function. For example, the table itself in the `ipairs` case. * @param state A some transient state of an iterator that is changed after each iteration. * For example, the array index in the `ipairs` case. * @returns An iterator pair. * @see {@link https://luafun.github.io/slicing.html#fun.span} */ export declare function span<TParam, TState, TReturn extends unknown[]>( predicate: (this: void, ...params: TReturn) => boolean, ...iterParams: [...IterParams<TParam, TState, TReturn>] ): LuaMultiReturn<[FunIterator<TState, TReturn>, FunIterator<TState, TReturn>]>; export declare const split: typeof span; /** * Return an iterator pair where the first operates on the subsequence of first `n` elements (possibly empty) * of array and second operates the remainder of array. * @param n A number of elements to span. * @param value An array. * @returns An iterator pair (first `n` elements and remainder). * @see {@link https://luafun.github.io/slicing.html#fun.split_at} */ export declare function split_at<T>( n: number, value: T[] ): LuaMultiReturn<[FunIterator<number, [T]>, FunIterator<number, [T]>]>; /** * Return an iterator pair where the first operates on the subsequence of first `n` elements (possibly empty) * of original iterator and second operates the remainder of original iterator. * @param n A number of elements to span. * @param value An iterator. * @returns An iterator pair (first `n` elements and remainder). * @see {@link https://luafun.github.io/slicing.html#fun.split_at} */ export declare function split_at<TState, TReturn extends unknown[]>( n: number, value: FunIterator<TState, TReturn> ): LuaMultiReturn<[FunIterator<TState, TReturn>, FunIterator<TState, TReturn>]>; /** * Return an iterator pair where the first operates on the subsequence of first `n` key-value pairs (possibly empty) * of map and second operates the remainder of map. * @param n A number of elements to span. * @param value A map. * @returns An iterator pair (first `n` key-value pairs and remainder). * @see {@link https://luafun.github.io/slicing.html#fun.split_at} */ export declare function split_at<TValue>( n: number, value: Record<string, TValue> ): LuaMultiReturn< [FunIterator<string, [string, TValue]>, FunIterator<string, [string, TValue]>] >; /** * Return an iterator pair where the first operates on the subsequence of first `n` symbols (possibly empty) * of string and second operates the remainder of string. * @param n A number of elements to span. * @param value A string. * @returns An iterator pair (first `n` symbols and remainder). * @see {@link https://luafun.github.io/slicing.html#fun.split_at} */ export declare function split_at( n: number, value: string ): LuaMultiReturn< [FunIterator<string, [string]>, FunIterator<string, [string]>] >; /** * Return an iterator pair where the first operates on the subsequence of first `n` elements (possibly empty) * of `gen`, `param`, `state` iterator and second operates the remainder of gen, param, state iterator. * @param n A number of elements to span. * @param gen A generating function that can produce a next value on each iteration. * Usually returns a new state and iteration values (multireturn). * @param param A permanent (constant) parameter of the generating function. * It is used to create a specific instance of the generating function. For example, the table itself in the `ipairs` case. * @param state A some transient state of an iterator that is changed after each iteration. * For example, the array index in the `ipairs` case. * @returns An iterator pair (first `n` elements and remainder). * @see {@link https://luafun.github.io/slicing.html#fun.split_at} */ export declare function split_at<TParam, TState, TReturn extends unknown[]>( n: number, ...iterParams: [...IterParams<TParam, TState, TReturn>] ): LuaMultiReturn<[FunIterator<TState, TReturn>, FunIterator<TState, TReturn>]>;