import type { Predicate, PredicateWithIndex, Refinement, RefinementWithIndex } from "../Function"; import type { Option } from "../Option"; import type { NonEmptyArray } from "./model"; /** * ```haskell * filterWithIndex_ :: (NonEmptyArray f, Index k) => * (f a, ((k, a) -> Boolean)) -> Option (f a) * ``` */ export declare const filterWithIndex_: { (fa: NonEmptyArray, f: RefinementWithIndex): Option>; (fa: NonEmptyArray, f: PredicateWithIndex): Option>; }; /** * ```haskell * filterWithIndex :: (NonEmptyArray f, Index k) => * ((k, a) -> Boolean) -> f a -> Option (f a) * ``` */ export declare const filterWithIndex: { (f: RefinementWithIndex): (fa: NonEmptyArray) => Option>; (f: PredicateWithIndex): (fa: NonEmptyArray) => Option>; }; /** * ```haskell * filter_ :: NonEmptyArray f => (f a, (a -> Boolean)) -> Option (f a) * ``` */ export declare const filter_: { (fa: NonEmptyArray, f: Refinement): Option>; (fa: NonEmptyArray, f: Predicate): Option>; }; /** * ```haskell * filter :: NonEmptyArray f => (a -> Boolean) -> f a -> Option (f a) * ``` */ export declare const filter: { (f: Refinement): (fa: NonEmptyArray) => Option>; (f: Predicate): (fa: NonEmptyArray) => Option>; }; //# sourceMappingURL=filterable.d.ts.map