import _m0 from "protobufjs/minimal"; import { AccountID, Key } from "./basic_types"; import { Duration } from "./duration"; export declare const protobufPackage = "proto"; /** See [ConsensusService.createTopic()](#proto.ConsensusService) */ export interface ConsensusCreateTopicTransactionBody { /** Short publicly visible memo about the topic. No guarantee of uniqueness. */ memo: string; /** * Access control for updateTopic/deleteTopic. * Anyone can increase the topic's expirationTime via ConsensusService.updateTopic(), regardless of the adminKey. * If no adminKey is specified, updateTopic may only be used to extend the topic's expirationTime, and deleteTopic * is disallowed. */ adminKey: Key | undefined; /** * Access control for submitMessage. * If unspecified, no access control is performed on ConsensusService.submitMessage (all submissions are allowed). */ submitKey: Key | undefined; /** * The initial lifetime of the topic and the amount of time to attempt to extend the topic's lifetime by * automatically at the topic's expirationTime, if the autoRenewAccount is configured (once autoRenew functionality * is supported by HAPI). * Limited to MIN_AUTORENEW_PERIOD and MAX_AUTORENEW_PERIOD value by server-side configuration. * Required. */ autoRenewPeriod: Duration | undefined; /** * Optional account to be used at the topic's expirationTime to extend the life of the topic (once autoRenew * functionality is supported by HAPI). * The topic lifetime will be extended up to a maximum of the autoRenewPeriod or however long the topic * can be extended using all funds on the account (whichever is the smaller duration/amount and if any extension * is possible with the account's funds). * If specified, there must be an adminKey and the autoRenewAccount must sign this transaction. */ autoRenewAccount: AccountID | undefined; } export declare const ConsensusCreateTopicTransactionBody: { encode(message: ConsensusCreateTopicTransactionBody, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ConsensusCreateTopicTransactionBody; fromJSON(object: any): ConsensusCreateTopicTransactionBody; toJSON(message: ConsensusCreateTopicTransactionBody): unknown; create(base?: DeepPartial): ConsensusCreateTopicTransactionBody; fromPartial(object: DeepPartial): ConsensusCreateTopicTransactionBody; }; 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_create_topic.d.ts.map