import type { Chunk } from "@effect-ts/core/Collections/Immutable/Chunk";
import type { Equal } from "@effect-ts/core/Equal";
import type { Show } from "@effect-ts/core/Show";
import type { SubColumns } from "../SubColumns/index.js";
/**
 * Represents the `SubLines` in Figlet which are the string that compose each
 * line of the `FIGure` or of a `FigCharacter`.
 *
 * @param value The collection of lines that compose the `SubLines`.
 */
export interface SubLines {
    readonly value: Chunk<string>;
}
/**
 * Create an instance of `SubLines` from a pure value.
 */
export declare function fromValue(value: Chunk<string>): SubLines;
/**
 * Create a zero-height `SubLines` object of the specified height.
 *
 * @param height The number of lines that compose this `SubLines` object.
 */
export declare function zero(height: number): SubLines;
/**
 * Counts the number of columns that compose the provided `SubLines`.
 */
export declare function width(self: SubLines): number;
/**
 * Transforms this `SubLines` into a `SubColumns`.
 */
export declare function toSubcolumns(self: SubLines): SubColumns;
/**
 * Gets the length of the `SubLines`.
 */
export declare function length(self: SubLines): number;
/**
 * Apply a function to each element to obtain a new `SubLines`.
 */
export declare function map_(self: SubLines, f: (s: string) => string): SubLines;
/**
 * Apply a function to each element to obtain a new `SubLines`.
 *
 * @ets_data_first map_
 */
export declare function map(f: (s: string) => string): (self: SubLines) => SubLines;
/**
 * Applies a function to each element of the `SubLines`.
 */
export declare function foreach_<U>(self: SubLines, f: (s: string) => U): void;
/**
 * Applies a function to each element of the `SubLines`.
 *
 * @ets_data_first foreach_
 */
export declare function foreach<U>(f: (s: string) => U): (self: SubLines) => void;
/**
 * Replaces a string value looking inside each element of the `SubLines`.
 */
export declare function replace_(self: SubLines, oldValue: string, newValue: string): SubLines;
/**
 * Replaces a string value looking inside each element of the `SubLines`.
 *
 * @ets_data_first replace_
 */
export declare function replace(oldValue: string, newValue: string): (self: SubLines) => SubLines;
export declare const equalSubLines: Equal<SubLines>;
export declare const showSubLines: Show<SubLines>;
//# sourceMappingURL=index.d.ts.map