import { BigNumber } from 'ethers';
import BigDecimal from '../shared/BigDecimal';
export declare class ClearingOperation {
    partition: string;
    expirationTimestamp: BigNumber;
    data: string;
}
export declare class ClearingOperationFrom {
    clearingOperation: ClearingOperation;
    from: string;
    operatorData: string;
}
export declare class ProtectedClearingOperation {
    clearingOperation: ClearingOperation;
    from: string;
    deadline: BigNumber;
    nonce: BigNumber;
}
export declare class ClearingOperationIdentifier {
    partition: string;
    tokenHolder: string;
    clearingOperationType: ClearingOperationType;
    clearingId: number;
}
export declare enum ClearingOperationType {
    Transfer = 0,
    Redeem = 1,
    HoldCreation = 2
}
export declare class CastClearingOperationType {
    static fromNumber(id: number): ClearingOperationType;
    static toNumber(value: ClearingOperationType): number;
}
export declare class ClearingHoldCreation {
    amount: BigDecimal;
    expirationTimestamp: number;
    data: string;
    operatorData: string;
    holdEscrowId: string;
    holdExpirationTimestamp: number;
    holdTo: string;
    holdData: string;
    constructor(amount: BigDecimal, expirationTimestamp: number, data: string, operatorData: string, holdEscrowId: string, holdExpirationTimestamp: number, holdTo: string, holdData: string);
}
export declare class ClearingRedeem {
    amount: BigDecimal;
    expirationTimestamp: number;
    data: string;
    operatorData: string;
    constructor(amount: BigDecimal, expirationTimestamp: number, data: string, operatorData: string);
}
export declare class ClearingTransfer {
    amount: BigDecimal;
    expirationTimestamp: number;
    destination: string;
    data: string;
    operatorData: string;
    constructor(amount: BigDecimal, expirationTimestamp: number, destination: string, data: string, operatorData: string);
}
