import _m0 from "protobufjs/minimal"; import { AccountID, Key } from "./basic_types"; import { Duration } from "./duration"; import { Timestamp } from "./timestamp"; export declare const protobufPackage = "proto"; /** Current state of a topic. */ export interface ConsensusTopicInfo { /** The memo associated with the topic (UTF-8 encoding max 100 bytes) */ memo: string; /** * When a topic is created, its running hash is initialized to 48 bytes of binary zeros. * For each submitted message, the topic's running hash is then updated to the output * of a particular SHA-384 digest whose input data include the previous running hash. * * See the TransactionReceipt.proto documentation for an exact description of the * data included in the SHA-384 digest used for the update. */ runningHash: Uint8Array; /** Sequence number (starting at 1 for the first submitMessage) of messages on the topic. */ sequenceNumber: number; /** * Effective consensus timestamp at (and after) which submitMessage calls will no longer succeed on the topic * and the topic will expire and after AUTORENEW_GRACE_PERIOD be automatically deleted. */ expirationTime: Timestamp | undefined; /** Access control for update/delete of the topic. Null if there is no key. */ adminKey: Key | undefined; /** Access control for ConsensusService.submitMessage. Null if there is no key. */ submitKey: Key | undefined; /** * If an auto-renew account is specified, when the topic expires, its lifetime will be extended * by up to this duration (depending on the solvency of the auto-renew account). If the * auto-renew account has no funds at all, the topic will be deleted instead. */ autoRenewPeriod: Duration | undefined; /** The account, if any, to charge for automatic renewal of the topic's lifetime upon expiry. */ autoRenewAccount: AccountID | undefined; /** The ledger ID the response was returned from; please see HIP-198 for the network-specific IDs. */ ledgerId: Uint8Array; } export declare const ConsensusTopicInfo: { encode(message: ConsensusTopicInfo, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ConsensusTopicInfo; fromJSON(object: any): ConsensusTopicInfo; toJSON(message: ConsensusTopicInfo): unknown; create(base?: DeepPartial): ConsensusTopicInfo; fromPartial(object: DeepPartial): ConsensusTopicInfo; }; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends { $case: string; } ? { [K in keyof Omit]?: DeepPartial; } & { $case: T["$case"]; } : T extends {} ? { [K in keyof T]?: DeepPartial; } : Partial; export {}; //# sourceMappingURL=consensus_topic_info.d.ts.map