import { BytesType } from "./Bytes.js";
import { Checksum256Type } from "./Checksum.js";
import { UInt32, UInt32Type } from "./Integer.js";
import { ABIDecoder } from "../serializer/Decoder.js";
import { ABIEncoder } from "../serializer/Encoder.js";
import { ABISerializableObject } from "../serializer/Serializable.js";
export type BlockIdType = BlockId | BytesType | {
    blockNum: UInt32Type;
    checksum: Checksum256Type;
};
export declare class BlockId implements ABISerializableObject {
    static abiName: string;
    static from(value: BlockIdType): BlockId;
    static fromABI(decoder: ABIDecoder): BlockId;
    static fromBlockChecksum(checksum: Checksum256Type, blockNum: UInt32Type): BlockId;
    readonly array: Uint8Array;
    constructor(array: Uint8Array);
    equals(other: BlockIdType): boolean;
    toABI(encoder: ABIEncoder): void;
    toString(): string;
    toJSON(): string;
    get hexString(): string;
    get blockNum(): UInt32;
}
//# sourceMappingURL=BlockId.d.ts.map