import type { NonEmptyArray } from "@effect-ts/core/Collections/Immutable/NonEmptyArray";
import type { Either } from "@effect-ts/core/Either";
import * as E from "@effect-ts/core/Either";
/**
 * The outcome of an operation that might result in one or more errors.
 *
 * @template A The type of the valid value contained in a FigletResult.
 */
export declare type FigletResult<A> = Either<NonEmptyArray<FigletException>, A>;
/**
 * Generic exception that can occur within the Figlet sublibrary.
 */
export declare type FigletException = FigletError | FigletLoadingError | FigletFileError | FigHeaderError | FigCharacterError | FigFontError;
declare const FigletError_base: import("@effect-ts/system/Case").CaseConstructorTagged<"FigletError", "_tag">;
/**
 * An error that occurred during the execution of the Figlet sublibrary.
 */
export declare class FigletError extends FigletError_base<{
    /**
     * @param message The description of the error.
     */
    readonly message: string;
}> {
}
declare const FigletLoadingError_base: import("@effect-ts/system/Case").CaseConstructorTagged<"FigletLoadingError", "_tag">;
/**
 * An error that can occur when loading a file.
 */
export declare class FigletLoadingError extends FigletLoadingError_base<{
    /**
     * The description of the error.
     */
    readonly message: string;
}> {
}
declare const FigletFileError_base: import("@effect-ts/system/Case").CaseConstructorTagged<"FigletFileError", "_tag">;
/**
 * An error that can occur when interpreting a Figlet file.
 */
export declare class FigletFileError extends FigletFileError_base<{
    /**
     * The description of the error.
     */
    readonly message: string;
}> {
}
declare const FigHeaderError_base: import("@effect-ts/system/Case").CaseConstructorTagged<"FigHeaderError", "_tag">;
/**
 * An error that can occur when interpreting a FigHeader.
 */
export declare class FigHeaderError extends FigHeaderError_base<{
    /**
     * The description of the error.
     */
    readonly message: string;
}> {
}
declare const FigCharacterError_base: import("@effect-ts/system/Case").CaseConstructorTagged<"FigCharacterError", "_tag">;
/**
 * An error that can occur when interpreting a FigCharacter.
 */
export declare class FigCharacterError extends FigCharacterError_base<{
    /**
     * The description of the error.
     */
    readonly message: string;
}> {
}
declare const FigFontError_base: import("@effect-ts/system/Case").CaseConstructorTagged<"FigFontError", "_tag">;
/**
 * An error that can occur when interpreting a FigFontError.
 */
export declare class FigFontError extends FigFontError_base<{
    /**
     * The description of the error.
     */
    readonly message: string;
}> {
}
export declare const Applicative: import("@effect-ts/core/Prelude").Applicative<[import("@effect-ts/core/Prelude").URI<"Either", {}>], E.V & import("@effect-ts/core/Prelude").Fix<"E", NonEmptyArray<FigletException>>>;
export {};
//# sourceMappingURL=index.d.ts.map