import { KupynaBase, KupynaDerived } from "./modes/kupyna";
export { type Kupyna } from "./const";
export { KupynaBase, KupynaDerived } from "./modes/kupyna";
export * from "./kmac";
/** Kupyna 256 bit version */
export declare class Kupyna256 extends KupynaBase<Kupyna256> {
    readonly outputLen = 32;
    readonly rounds = 10;
    readonly offsets: number[];
    /** Kupyna 256 bit version */
    constructor();
    _cloneInto(to?: Kupyna256): Kupyna256;
    clone(): Kupyna256;
    /** Create hash instance */
    static create(): Kupyna256;
}
/** Kupyna 512 bit version */
export declare class Kupyna512 extends KupynaBase<Kupyna512> {
    readonly outputLen = 64;
    readonly rounds = 14;
    readonly offsets: number[];
    /** Kupyna 512 bit version */
    constructor();
    _cloneInto(to?: Kupyna512): Kupyna512;
    clone(): Kupyna512;
    /** Create hash instance */
    static create(): Kupyna512;
}
/** Kupyna 48 bit */
export declare class Kupyna48 extends KupynaDerived<Kupyna256> {
    constructor();
    /** Create hash instance */
    static create(): Kupyna48;
    _cloneInto(to?: Kupyna48): Kupyna48;
    clone(): Kupyna48;
}
/** Kupyna 304 bit */
export declare class Kupyna304 extends KupynaDerived<Kupyna512> {
    constructor();
    /** Create hash instance */
    static create(): Kupyna304;
    _cloneInto(to?: Kupyna304): Kupyna304;
    clone(): Kupyna304;
}
/** Kupyna 384 bit */
export declare class Kupyna384 extends KupynaDerived<Kupyna512> {
    constructor();
    /** Create hash instance */
    static create(): Kupyna384;
    _cloneInto(to?: Kupyna384): Kupyna384;
    clone(): Kupyna384;
}
/**
 * Compute hash with Kupyna 48 bit
 * @param data Input data
 */
export declare const kupyna48: (data: Uint8Array) => Uint8Array;
/**
 * Compute hash with Kupyna 256 bit
 * @param data Input data
 */
export declare const kupyna256: (data: Uint8Array) => Uint8Array;
/**
 * Compute hash with Kupyna 304 bit
 * @param data Input data
 */
export declare const kupyna304: (data: Uint8Array) => Uint8Array;
/**
 * Compute hash with Kupyna 384 bit
 * @param data Input data
 */
export declare const kupyna384: (data: Uint8Array) => Uint8Array;
/**
 * Compute hash with Kupyna 512 bit
 * @param data Input data
 */
export declare const kupyna512: (data: Uint8Array) => Uint8Array;
