import { Field, UInt64 } from "o1js";
declare const MulDivResult_base: (new (value: {
    result: UInt64;
    remainder: UInt64;
}) => {
    result: UInt64;
    remainder: UInt64;
}) & {
    _isStruct: true;
} & Omit<import("node_modules/o1js/dist/node/lib/provable/types/provable-intf.js").Provable<{
    result: UInt64;
    remainder: UInt64;
}, {
    result: bigint;
    remainder: bigint;
}>, "fromFields"> & {
    fromFields: (fields: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[]) => {
        result: UInt64;
        remainder: UInt64;
    };
} & {
    fromValue: (value: {
        result: number | bigint | UInt64;
        remainder: number | bigint | UInt64;
    }) => {
        result: UInt64;
        remainder: UInt64;
    };
    toInput: (x: {
        result: UInt64;
        remainder: UInt64;
    }) => {
        fields?: Field[] | undefined;
        packed?: [Field, number][] | undefined;
    };
    toJSON: (x: {
        result: UInt64;
        remainder: UInt64;
    }) => {
        result: string;
        remainder: string;
    };
    fromJSON: (x: {
        result: string;
        remainder: string;
    }) => {
        result: UInt64;
        remainder: UInt64;
    };
    empty: () => {
        result: UInt64;
        remainder: UInt64;
    };
};
export declare class MulDivResult extends MulDivResult_base {
}
export declare function mulDiv(params: {
    value: UInt64;
    multiplier: UInt64;
    denominator: UInt64;
}): MulDivResult;
export {};
