/// <reference types="node" />
import { As } from 'type-tagger';
import { Overwrite } from 'utility-types';
import { IRegisterSecondSignature } from '../../lisk';
import { RiseV2Transaction } from '../base_rise';
import { BaseRiseV2Codec } from './base_v2';
export declare type RiseV2SecondSignatureAsset = {
    signature: {
        publicKey: Buffer & As<'publicKey'>;
    };
};
export declare type IRegisterSecondSignatureRiseV2Tx = Overwrite<IRegisterSecondSignature, {
    kind: 'second-signature-v2';
}>;
export declare class RiseSecondSignV2TxCodec extends BaseRiseV2Codec<RiseV2SecondSignatureAsset> {
    constructor();
    transform(from: IRegisterSecondSignatureRiseV2Tx): RiseV2Transaction<RiseV2SecondSignatureAsset>;
    calcFees(tx: IRegisterSecondSignatureRiseV2Tx): number;
    protected assetBytes(tx: RiseV2Transaction<RiseV2SecondSignatureAsset>): Buffer;
    protected assetFromBytes(buf: Buffer): RiseV2SecondSignatureAsset;
}
