/** @module array/popIndex.ts */
import { untypedCurry } from '../function/untypedCurry'
import { ValueAt } from '../helper-types'
export function popIndex( index: I, arr: A[] ): [A, A[]]
// export function popIndex( index: I, arr: A ): [ValueAt, A]
// export function popIndex( index: I ): ( arr: B ) => [ ValueAt < B, I > , B ]
export function popIndex( index: number ): ( arr: A[] ) => [A, A[]]
/**
* Todo
*/
export function popIndex( ...args ) {
return untypedCurry( ( index, arr ) => [ arr[ index ], [ ...arr.slice( 0, index ), ...arr.slice( index + 1, arr.length ) ] ] )
}
export default popIndex