import type { Principal } from '@dfinity/principal'; /** @internal */ export interface ICNSRegistry { 'addWhitelist': (arg_0: string) => Promise; 'approve': (arg_0: string, arg_1: Principal) => Promise; 'balanceOf': (arg_0: Principal) => Promise; 'controller': (arg_0: string) => Promise<[] | [Principal]>; 'expiry': (arg_0: string) => Promise<[] | [Time]>; 'exportOwnerDomains': () => Promise]>>; 'getApproved': (arg_0: string) => Promise<[] | [Principal]>; 'getControllerDomains': (arg_0: Principal) => Promise<[ ] | [Array]>; 'getInfo': () => Promise; 'getRecord': (arg_0: string) => Promise<[] | [RecordExt]>; 'getUserDomains': (arg_0: Principal) => Promise<[] | [Array]>; 'isApproved': (arg_0: string, arg_1: Principal) => Promise; 'isApprovedForAll': (arg_0: Principal, arg_1: Principal) => Promise; 'isWhitelisted': (arg_0: string) => Promise; 'owner': (arg_0: string) => Promise<[] | [Principal]>; 'recordExists': (arg_0: string) => Promise; 'removeWhitelist': (arg_0: string) => Promise; 'resolver': (arg_0: string) => Promise<[] | [Principal]>; 'setApprovalForAll': (arg_0: Principal, arg_1: boolean) => Promise; 'setController': (arg_0: string, arg_1: Principal) => Promise; 'setOwner': (arg_0: string, arg_1: Principal) => Promise; 'setRecord': (arg_0: string, arg_1: Principal, arg_2: Principal, arg_3: bigint, arg_4: Time) => Promise; 'setResolver': (arg_0: string, arg_1: Principal) => Promise; 'setSubnodeExpiry': (arg_0: string, arg_1: string, arg_2: Time) => Promise; 'setSubnodeOwner': (arg_0: string, arg_1: string, arg_2: Principal) => Promise; 'setSubnodeRecord': (arg_0: string, arg_1: string, arg_2: Principal, arg_3: Principal, arg_4: bigint, arg_5: Time) => Promise; 'setTTL': (arg_0: string, arg_1: bigint) => Promise; 'transfer': (arg_0: Principal, arg_1: string) => Promise; 'transferFrom': (arg_0: Principal, arg_1: Principal, arg_2: string) => Promise; 'ttl': (arg_0: string) => Promise<[] | [bigint]>; } interface Info { 'memSize': bigint; 'heapSize': bigint; 'historySize': bigint; 'cycles': bigint; 'names': bigint; 'users': bigint; } export interface RecordExt { 'ttl': bigint; 'controller': Principal; 'resolver': Principal; 'owner': Principal; 'operator': Principal; 'name': string; 'expiry': Time; } declare type Time = bigint; declare type TxReceipt = { 'ok': bigint; } | { 'err': string; }; export {};