import { Ord, Equal, NonEmptyArguments } from "@effect-ts-app/core/Prelude"; import { Order } from "@fp-ts/core/typeclass/Order"; import { NonEmptyArray, NonEmptyReadonlyArray } from "@fp-ts/data/ReadonlyArray"; import { Predicate } from "@fp-ts/data/Predicate"; import { Chunk } from "@fp-ts/data/Chunk"; import { Effect } from "@effect/io/Effect"; import * as Option from "./Option.js"; import * as Dur from "@fp-ts/data/Duration"; export * from "@fp-ts/data/ReadonlyArray"; /** * @tsplus getter ets/Ord toOrder * @tsplus location "@effect-ts-app/core/Array" */ export declare function convertOrd(_: Ord): Order; /** * @tsplus getter Generator toArray * @tsplus getter Iterable toArray * @tsplus location "@effect-ts-app/core/Array" */ export declare function toArray(gen: Generator): A[]; /** * Remove duplicates from an array, keeping the first occurrence of an element. * @tsplus pipeable Array uniq * @tsplus pipeable ReadonlyArray uniq * @tsplus static fp-ts/data/ReadonlyArray.Ops uniq * @tsplus location "@effect-ts-app/core/Array" */ export declare function uniq(E: Equal): (self: ReadonlyArray) => ReadonlyArray; /** * @tsplus static fp-ts/data/Duration.Ops makeMillis * @tsplus location "@effect-ts-app/core/Array" */ export declare const millis_: (millis: number) => Dur.Duration; export declare const isArray: (arg: any) => arg is any[]; /** * @tsplus static fp-ts/data/ReadonlyArray.Ops findFirstMap * @tsplus static Array.Ops findFirstMap * @tsplus pipeable Array findFirstMap * @tsplus pipeable fp-ts/data/ReadonlyArray findFirstMap * @tsplus pipeable ReadonlyArray findFirstMap * @tsplus pipeable NonEmptyArray findFirstMap * @tsplus pipeable NonEmptyArrayReadonlyArray findFirstMap * @tsplus location "@effect-ts-app/core/Array" */ export declare function findFirstMap(f: (a: A) => Option.Option): (as: ReadonlyArray) => Option.None | Option.Some; /** * @tsplus static fp-ts/data/ReadonlyArray.NonEmptyArray.Ops fromArray * @tsplus location "@effect-ts-app/core/Array" */ export declare function NEAFromArray(ar: Array): Option.None | Option.Some<[T, ...T[]]>; /** * @tsplus static fp-ts/data/ReadonlyArray/NonEmptyReadonlyArray.Ops fromArray * @tsplus location "@effect-ts-app/core/Array" */ export declare function NEROArrayFromArray(ar: ReadonlyArray): Option.None | Option.Some; /** * @tsplus pipeable Array sortWith * @tsplus pipeable ReadonlyArray sortWith * @tsplus location "@effect-ts-app/core/Array" */ export declare function sortWith(...ords: NonEmptyArguments>): (a: ReadonlyArray) => ReadonlyArray; /** * @tsplus pipeable Array sortByO * @tsplus pipeable ReadonlyArray sortByO * @tsplus pipeable NonEmptyArray sortByO * @tsplus pipeable NonEmptyArrayReadonlyArray sortByO * @tsplus location "@effect-ts-app/core/Array" */ export declare function sortByO(ords: Option.Option>>): (a: ReadonlyArray) => ReadonlyArray; /** * @tsplus fluent ReadonlyArray groupByT * @tsplus fluent Array groupByT * @tsplus fluent NonEmptyArray groupByT * @tsplus fluent NonEmptyArrayReadonlyArray groupByT * @tsplus location "@effect-ts-app/core/Array" */ export declare function groupByT(as: ReadonlyArray, f: (a: A) => Key): ReadonlyArray]>; /** * @tsplus operator ReadonlyArray & * @tsplus fluent ReadonlyArray concat * @tsplus location "@effect-ts-app/core/Array" */ export declare function concat_(self: ReadonlyArray, that: ReadonlyArray): ReadonlyArray; /** * Concatenates two ReadonlyArray together * @tsplus operator ReadonlyArray + * @tsplus location "@effect-ts-app/core/Array" */ export declare const concatOperator: (self: ReadonlyArray, that: ReadonlyArray) => ReadonlyArray; /** * Prepends `a` to ReadonlyArray * @tsplus operator ReadonlyArray + 1.0 * @tsplus location "@effect-ts-app/core/Array" */ export declare function prependOperatorStrict(a: A, self: ReadonlyArray): ReadonlyArray; /** * Prepends `a` to ReadonlyArray * @tsplus operator ReadonlyArray > * @tsplus location "@effect-ts-app/core/Array" */ export declare function prependOperator(a: A, self: ReadonlyArray): ReadonlyArray; /** * Prepends `a` to ReadonlyArray * @tsplus fluent ReadonlyArray prepend * @tsplus location "@effect-ts-app/core/Array" */ export declare function prepend_(tail: ReadonlyArray, head: B): ReadonlyArray; /** * Appends `a` to ReadonlyArray * @tsplus fluent ReadonlyArray append * @tsplus operator ReadonlyArray < * @tsplus location "@effect-ts-app/core/Array" */ export declare function append_(init: ReadonlyArray, end: B): ReadonlyArray; /** * @tsplus operator ReadonlyArray + 1.0 * @tsplus location "@effect-ts-app/core/Array" */ export declare const appendOperator: (self: ReadonlyArray, a: A) => ReadonlyArray; /** * @tsplus fluent ReadonlyArray randomElement 1 * @tsplus fluent Array randomElement 1 * @tsplus location "@effect-ts-app/core/Array" */ export declare function randomElement(a: ReadonlyArray): A; /** * @tsplus fluent fp-ts/data/ReadonlyArray/NonEmptyReadonlyArray randomElement 2 * @tsplus location "@effect-ts-app/core/Array" */ export declare function randomElementNA(a: NonEmptyReadonlyArray): A; /** * @tsplus pipeable Array mapNonEmpty * @tsplus pipeable fp-ts/data/ReadonlyArray mapNonEmpty * @tsplus pipeable fp-ts/data/ReadonlyArray/NonEmptyReadonlyArray mapNonEmpty * @tsplus pipeable fp-ts/data/ReadonlyArray.NonEmptyArray mapNonEmpty * @tsplus location "@effect-ts-app/core/Array" */ export declare const mapRA: (f: (a: A) => B) => (self: readonly [A, ...A[]]) => [B, ...B[]]; /** * @tsplus fluent fp-ts/data/ReadonlyArray/NonEmptyReadonlyArray sortBy * @tsplus location "@effect-ts-app/core/Array" */ export declare function sortBy(na: NonEmptyReadonlyArray, ords: readonly Ord[]): readonly [A, ...A[]]; /** * @tsplus static fp-ts/data/ReadonlyArray.Ops sortWithNonEmpty * @tsplus pipeable ReadonlyArray sortWithNonEmpty * @tsplus location "@effect-ts-app/core/Array" */ export declare function sortWithNonEmpty(...ords: NonEmptyArguments>): (a: NonEmptyReadonlyArray) => NonEmptyArray; /** * @tsplus static fp-ts/data/ReadonlyArray/NonEmptyReadonlyArray __call * @tsplus location "@effect-ts-app/core/Array" */ export declare const makeNA: (...elements: Elements) => [Elements[number], ...Elements[number][]]; /** * @tsplus fluent ReadonlyArray filterWith * @tsplus location "@effect-ts-app/core/Array" */ export declare function filterWith(self: ReadonlyArray, predicates: ReadonlyArray>): A[]; /** * Split the `items` array into multiple, smaller chunks of the given `size`. */ export declare function _chunk_(items_: Iterable, size: number): Generator; /** * Split the `items` array into multiple, smaller chunks of the given `size`. * @tsplus fluent Array chunk * @tsplus fluent ReadonlyArray chunk * @tsplus fluent fp-ts/data/Chunk chunk * @tsplus fluent Iterable chunk * @tsplus location "@effect-ts-app/core/Array" */ export declare function chunk_(items_: Iterable, size: number): import("@fp-ts/data/Chunk").Chunk; /** * @tsplus getter Array toChunk * @tsplus getter ReadonlyArray toChunk * @tsplus getter Iterable toChunk * @tsplus location "@effect-ts-app/core/Array" */ export declare function toChunk(items: Iterable): import("@fp-ts/data/Chunk").Chunk; /** * @tsplus getter ReadonlyArray toNonEmpty * @tsplus getter Array toNonEmpty * @tsplus getter fp-ts/data/ReadonlyArray toNonEmpty * @tsplus location "@effect-ts-app/core/Array" */ export declare const toNonEmptyArray: (a: readonly A[]) => Option.None | Option.Some; /** * @tsplus getter Iterable toArray * @tsplus getter Iterator toArray * @tsplus getter Generator toArray * @tsplus location "@effect-ts-app/core/Array" */ export declare const iterableToArray: { (arrayLike: ArrayLike): T[]; (arrayLike: ArrayLike, mapfn: (v: T_1, k: number) => U, thisArg?: any): U[]; (iterable: Iterable | ArrayLike): T_2[]; (iterable: Iterable | ArrayLike, mapfn: (v: T_3, k: number) => U_1, thisArg?: any): U_1[]; }; /** * @tsplus getter Iterable toNonEmptyArray * @tsplus location "@effect-ts-app/core/Array" */ export declare function CollectionToNonEmptyReadonlyArray(c: Iterable): Option.None | Option.Some; /** * @tsplus getter fp-ts/data/Chunk toNonEmptyArray * @tsplus location "@effect-ts-app/core/Array" */ export declare function ChunkToNonEmptyReadonlyArray(c: Chunk): Option.None | Option.Some; /** * @tsplus fluent Array forEachEffectPar * @tsplus fluent ReadonlyArray forEachEffectPar * @tsplus location "@effect-ts-app/core/Array" */ export declare function ext_forEachEffectPar(as: ReadonlyArray, f: (a: A) => Effect): import("@effect/io/Effect").Effect>; /** * @tsplus fluent fp-ts/data/Chunk forEachEffectPar * @tsplus location "@effect-ts-app/core/Array" */ export declare function ext_CNKforEachEffectPar(as: Chunk, f: (a: A) => Effect): import("@effect/io/Effect").Effect>; /** * @tsplus fluent fp-ts/data/ReadonlyArray/NonEmptyReadonlyArray forEachEffectPar * @tsplus location "@effect-ts-app/core/Array" */ export declare function ext_NAforEachEffectPar(as: NonEmptyReadonlyArray, f: (a: A) => Effect): import("@effect/io/Effect").Effect; /** * @tsplus fluent fp-ts/data/ReadonlyArray/NonEmptyReadonlyArray forEachEffect * @tsplus location "@effect-ts-app/core/Array" */ export declare function ext_NAforEach(as: NonEmptyReadonlyArray, f: (a: A) => Effect): import("@effect/io/Effect").Effect; /** * @tsplus fluent fp-ts/data/ReadonlyArray/NonEmptyReadonlyArray forEachEffectWithIndexPar * @tsplus location "@effect-ts-app/core/Array" */ export declare function ext_NAforEachEffectWithIndexPar(as: NonEmptyReadonlyArray, f: (a: A, i: number) => Effect): import("@effect/io/Effect").Effect; /** * @tsplus fluent fp-ts/data/ReadonlyArray/NonEmptyReadonlyArray forEachEffectWithIndex * @tsplus location "@effect-ts-app/core/Array" */ export declare function ext_NAforEachWithIndex(as: NonEmptyReadonlyArray, f: (a: A, i: number) => Effect): import("@effect/io/Effect").Effect; /** * @tsplus fluent ReadonlyArray forEachEffectWithIndex * @tsplus fluent Array forEachEffectWithIndex * @tsplus fluent fp-ts/data/Chunk forEachEffectWithIndex * @tsplus fluent ets/Set forEachEffectWithIndex * @tsplus location "@effect-ts-app/core/Array" */ export declare function ext_forEachWithIndex(as: Iterable, f: (a: A, i: number) => Effect): import("@effect/io/Effect").Effect>; /** * @tsplus fluent ReadonlyArray forEachEffectParWithIndex * @tsplus fluent Array forEachEffectParWithIndex * @tsplus fluent fp-ts/data/Chunk forEachEffectParWithIndex * @tsplus fluent ets/Set forEachEffectParWithIndex * @tsplus location "@effect-ts-app/core/Array" */ export declare function ext_forEachParWithIndex(as: Iterable, f: (a: A, i: number) => Effect): import("@effect/io/Effect").Effect>; /** * @tsplus getter Iterable toChunk * @tsplus getter Iterator toChunk * @tsplus getter Generator toChunk * @tsplus location "@effect-ts-app/core/Array" */ export declare const ext_itToChunk: (self: Iterable) => import("@fp-ts/data/Chunk").Chunk; //# sourceMappingURL=Array.d.ts.map