import { DefaultResult, DeprecatedResult, ForwardResult, NormalizedDefaultResult, NormalizedDeprecatedResult, NormalizedDeprecatedResultWithTrue, NormalizedForwardResult, NormalizedRedirectResult, NormalizedTransferResult, NormalizedValidateResult, Options, RedirectResult, TransferResult, ValidateResult } from './types'; export declare type NotEmptyArray = [T, ...T[]]; export declare type RecordFromUnion = { [X in T[K]]: Extract>; }; export declare function recordFromArray, K extends keyof T>(array: T[], mainKey: K): RecordFromUnion; export declare function mapFromArray, K extends keyof T>(array: T[], mainKey: K): Map; export declare function createAutoChecklist(): (id: any) => boolean; export declare function partition(array: T[], predicate: (x: T) => boolean): [T[], T[]]; export declare function isInt(value: number): boolean; export declare function comparePrimitive(a: undefined | null | boolean | number | string, b: undefined | null | boolean | number | string): number; export declare function normalizeDefaultResult<$Value>(result: DefaultResult<$Value>): NormalizedDefaultResult<$Value>; export declare function normalizeValidateResult(result: ValidateResult, value: unknown): NormalizedValidateResult; export declare function normalizeDeprecatedResult<$Value>(result: DeprecatedResult<$Value>, value: $Value): NormalizedDeprecatedResult<$Value>; export declare function normalizeDeprecatedResult<$Value>(result: DeprecatedResult<$Value>, value: $Value, doNotNormalizeTrue: true): NormalizedDeprecatedResultWithTrue<$Value>; export declare function normalizeTransferResult<$Value>(result: TransferResult<$Value>, value: $Value): NormalizedTransferResult<$Value>; export declare function normalizeForwardResult<$Value>(result: ForwardResult<$Value>, value: $Value): NormalizedForwardResult<$Value>; export declare function normalizeRedirectResult<$Value>(result: RedirectResult<$Value>, value: $Value): NormalizedRedirectResult<$Value>;