import type { TArg, TRet } from "./utils";
/** Kupyna abstract interface */
export interface Kupyna<T> {
    /** Output length */
    outputLen: number;
    /** Block length */
    blockLen: number;
    /** Clone hash instance */
    clone(): T;
    /** Update hash buffer */
    update(p: TArg<Uint8Array>): T;
    /** Finalize hash computation and return result as Uint8Array */
    digest(): TRet<Uint8Array>;
}
export declare const dpad: Readonly<Uint8Array>;
export declare const kpad32: Readonly<Uint8Array>;
export declare const kpad48: Readonly<Uint8Array>;
export declare const kpad64: Readonly<Uint8Array>;
/** Replacement table No. 1 for nonlinear bi-objective reflection */
export declare const T0: Readonly<BigUint64Array>;
/** Replacement table No. 2 for nonlinear bi-objective reflection */
export declare const T1: Readonly<BigUint64Array>;
/** Replacement table No. 3 for nonlinear bi-objective reflection */
export declare const T2: Readonly<BigUint64Array>;
/** Replacement table No. 4 for nonlinear bi-objective reflection */
export declare const T3: Readonly<BigUint64Array>;
/** Replacement table No. 5 for nonlinear bi-objective reflection */
export declare const T4: Readonly<BigUint64Array>;
/** Replacement table No. 6 for nonlinear bi-objective reflection */
export declare const T5: Readonly<BigUint64Array>;
/** Replacement table No. 7 for nonlinear bi-objective reflection */
export declare const T6: Readonly<BigUint64Array>;
/** Replacement table No. 8 for nonlinear bi-objective reflection */
export declare const T7: Readonly<BigUint64Array>;
