@bonfida/spl-name-service 0.1.37 → 0.1.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/dist/bindings.d.ts +0 -6
  2. package/dist/bindings.js +26 -33
  3. package/dist/bindings.js.map +1 -1
  4. package/dist/constants.d.ts +37 -0
  5. package/dist/constants.js +41 -0
  6. package/dist/constants.js.map +1 -0
  7. package/dist/favorite-domain.d.ts +11 -0
  8. package/dist/favorite-domain.js +20 -0
  9. package/dist/favorite-domain.js.map +1 -0
  10. package/dist/index.d.ts +5 -0
  11. package/dist/index.js +10 -1
  12. package/dist/index.js.map +1 -1
  13. package/dist/instructions.d.ts +1 -1
  14. package/dist/instructions.js +6 -6
  15. package/dist/instructions.js.map +1 -1
  16. package/dist/int.d.ts +22 -0
  17. package/dist/int.js +70 -0
  18. package/dist/int.js.map +1 -0
  19. package/dist/nft.js +1 -1
  20. package/dist/nft.js.map +1 -1
  21. package/dist/record.d.ts +102 -0
  22. package/dist/record.js +154 -0
  23. package/dist/record.js.map +1 -0
  24. package/dist/state.js +7 -7
  25. package/dist/state.js.map +1 -1
  26. package/dist/tokens.js +3 -3
  27. package/dist/tokens.js.map +1 -1
  28. package/dist/twitter_bindings.d.ts +0 -2
  29. package/dist/twitter_bindings.js +50 -54
  30. package/dist/twitter_bindings.js.map +1 -1
  31. package/dist/types/record.d.ts +18 -0
  32. package/dist/types/record.js +23 -0
  33. package/dist/types/record.js.map +1 -0
  34. package/dist/utils.d.ts +32 -30
  35. package/dist/utils.js +77 -107
  36. package/dist/utils.js.map +1 -1
  37. package/jest.config.js +6 -0
  38. package/package.json +6 -2
  39. package/src/bindings.ts +7 -26
  40. package/src/constants.ts +62 -0
  41. package/src/favorite-domain.ts +25 -0
  42. package/src/index.ts +5 -0
  43. package/src/instructions.ts +2 -2
  44. package/src/int.ts +75 -0
  45. package/src/record.ts +177 -0
  46. package/src/twitter_bindings.ts +18 -36
  47. package/src/types/record.ts +18 -0
  48. package/src/utils.ts +79 -139
  49. package/tests/derivation.test.ts +28 -0
  50. package/tests/favorite.test.ts +26 -0
  51. package/tests/get-domains.test.ts +21 -0
  52. package/tests/records.test.ts +74 -0
  53. package/tests/reverse-lookup.test.ts +14 -0
  54. package/dist/test.d.ts +0 -0
  55. package/dist/test.js +0 -2
  56. package/dist/test.js.map +0 -1
  57. package/src/test.ts +0 -0
@@ -1,11 +1,5 @@
1
1
  /// <reference types="node" />
2
2
  import { Connection, PublicKey, TransactionInstruction } from "@solana/web3.js";
3
- export declare const NAME_PROGRAM_ID: PublicKey;
4
- export declare const HASH_PREFIX = "SPL Name Service";
5
- export declare const REGISTER_PROGRAM_ID: PublicKey;
6
- export declare const PYTH_FIDDA_PRICE_ACC: PublicKey;
7
- export declare const BONFIDA_FIDA_BNB: PublicKey;
8
- export declare const ROOT_DOMAIN_ACCOUNT: PublicKey;
9
3
  /**
10
4
  * Creates a name account with the given rent budget, allocated space, owner and class.
11
5
  *
package/dist/bindings.js CHANGED
@@ -1,19 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.registerDomainName = exports.deleteNameRegistry = exports.transferNameOwnership = exports.updateNameRegistryData = exports.createNameRegistry = exports.ROOT_DOMAIN_ACCOUNT = exports.BONFIDA_FIDA_BNB = exports.PYTH_FIDDA_PRICE_ACC = exports.REGISTER_PROGRAM_ID = exports.HASH_PREFIX = exports.NAME_PROGRAM_ID = void 0;
3
+ exports.registerDomainName = exports.deleteNameRegistry = exports.transferNameOwnership = exports.updateNameRegistryData = exports.createNameRegistry = void 0;
4
4
  const web3_js_1 = require("@solana/web3.js");
5
5
  const instructions_1 = require("./instructions");
6
6
  const state_1 = require("./state");
7
+ const int_1 = require("./int");
7
8
  const utils_1 = require("./utils");
8
- const utils_2 = require("./utils");
9
- ////////////////////////////////////////////////////////////
10
- exports.NAME_PROGRAM_ID = new web3_js_1.PublicKey("namesLPneVptA9Z5rqUDD9tMTWEJwofgaYwp8cawRkX");
11
- exports.HASH_PREFIX = "SPL Name Service";
12
- exports.REGISTER_PROGRAM_ID = new web3_js_1.PublicKey("jCebN34bUfdeUYJT13J1yG16XWQpt5PDx6Mse9GUqhR");
13
- exports.PYTH_FIDDA_PRICE_ACC = new web3_js_1.PublicKey("ETp9eKXVv1dWwHSpsXRUuXHmw24PwRkttCGVgpZEY9zF");
14
- exports.BONFIDA_FIDA_BNB = new web3_js_1.PublicKey("AUoZ3YAhV3b2rZeEH93UMZHXUZcTramBvb4d9YEVySkc");
15
- exports.ROOT_DOMAIN_ACCOUNT = new web3_js_1.PublicKey("58PwtjSDuFHuUkYjH9BYnnQKHfwo9reZhC2zMJv9JPkx");
16
- ////////////////////////////////////////////////////////////
9
+ const constants_1 = require("./constants");
17
10
  /**
18
11
  * Creates a name account with the given rent budget, allocated space, owner and class.
19
12
  *
@@ -28,21 +21,21 @@ exports.ROOT_DOMAIN_ACCOUNT = new web3_js_1.PublicKey("58PwtjSDuFHuUkYjH9BYnnQKH
28
21
  * @returns
29
22
  */
30
23
  async function createNameRegistry(connection, name, space, payerKey, nameOwner, lamports, nameClass, parentName) {
31
- const hashed_name = await utils_2.getHashedName(name);
32
- const nameAccountKey = await utils_2.getNameAccountKey(hashed_name, nameClass, parentName);
24
+ const hashed_name = await (0, utils_1.getHashedName)(name);
25
+ const nameAccountKey = await (0, utils_1.getNameAccountKey)(hashed_name, nameClass, parentName);
33
26
  const balance = lamports
34
27
  ? lamports
35
28
  : await connection.getMinimumBalanceForRentExemption(space);
36
29
  let nameParentOwner;
37
30
  if (parentName) {
38
- const { registry: parentAccount } = await utils_2.getNameOwner(connection, parentName);
31
+ const { registry: parentAccount } = await (0, utils_1.getNameOwner)(connection, parentName);
39
32
  nameParentOwner = parentAccount.owner;
40
33
  }
41
- const createNameInstr = instructions_1.createInstruction(exports.NAME_PROGRAM_ID, web3_js_1.SystemProgram.programId, nameAccountKey, nameOwner, payerKey, hashed_name,
34
+ const createNameInstr = (0, instructions_1.createInstruction)(constants_1.NAME_PROGRAM_ID, web3_js_1.SystemProgram.programId, nameAccountKey, nameOwner, payerKey, hashed_name,
42
35
  //@ts-ignore
43
- new utils_1.Numberu64(balance),
36
+ new int_1.Numberu64(balance),
44
37
  //@ts-ignore
45
- new utils_2.Numberu32(space), nameClass, parentName, nameParentOwner);
38
+ new int_1.Numberu32(space), nameClass, parentName, nameParentOwner);
46
39
  return createNameInstr;
47
40
  }
48
41
  exports.createNameRegistry = createNameRegistry;
@@ -57,8 +50,8 @@ exports.createNameRegistry = createNameRegistry;
57
50
  * @param nameParent The parent name of this name, if it exists
58
51
  */
59
52
  async function updateNameRegistryData(connection, name, offset, input_data, nameClass, nameParent) {
60
- const hashed_name = await utils_2.getHashedName(name);
61
- const nameAccountKey = await utils_2.getNameAccountKey(hashed_name, nameClass, nameParent);
53
+ const hashed_name = await (0, utils_1.getHashedName)(name);
54
+ const nameAccountKey = await (0, utils_1.getNameAccountKey)(hashed_name, nameClass, nameParent);
62
55
  let signer;
63
56
  if (nameClass) {
64
57
  signer = nameClass;
@@ -67,9 +60,9 @@ async function updateNameRegistryData(connection, name, offset, input_data, name
67
60
  signer = (await state_1.NameRegistryState.retrieve(connection, nameAccountKey))
68
61
  .registry.owner;
69
62
  }
70
- const updateInstr = instructions_1.updateInstruction(exports.NAME_PROGRAM_ID, nameAccountKey,
63
+ const updateInstr = (0, instructions_1.updateInstruction)(constants_1.NAME_PROGRAM_ID, nameAccountKey,
71
64
  //@ts-ignore
72
- new utils_2.Numberu32(offset), input_data, signer);
65
+ new int_1.Numberu32(offset), input_data, signer);
73
66
  return updateInstr;
74
67
  }
75
68
  exports.updateNameRegistryData = updateNameRegistryData;
@@ -86,8 +79,8 @@ exports.updateNameRegistryData = updateNameRegistryData;
86
79
  * @returns
87
80
  */
88
81
  async function transferNameOwnership(connection, name, newOwner, nameClass, nameParent, parentOwner) {
89
- const hashed_name = await utils_2.getHashedName(name);
90
- const nameAccountKey = await utils_2.getNameAccountKey(hashed_name, nameClass, nameParent);
82
+ const hashed_name = await (0, utils_1.getHashedName)(name);
83
+ const nameAccountKey = await (0, utils_1.getNameAccountKey)(hashed_name, nameClass, nameParent);
91
84
  let curentNameOwner;
92
85
  if (nameClass) {
93
86
  curentNameOwner = nameClass;
@@ -95,7 +88,7 @@ async function transferNameOwnership(connection, name, newOwner, nameClass, name
95
88
  else {
96
89
  curentNameOwner = (await state_1.NameRegistryState.retrieve(connection, nameAccountKey)).registry.owner;
97
90
  }
98
- const transferInstr = instructions_1.transferInstruction(exports.NAME_PROGRAM_ID, nameAccountKey, newOwner, curentNameOwner, nameClass, nameParent, parentOwner);
91
+ const transferInstr = (0, instructions_1.transferInstruction)(constants_1.NAME_PROGRAM_ID, nameAccountKey, newOwner, curentNameOwner, nameClass, nameParent, parentOwner);
99
92
  return transferInstr;
100
93
  }
101
94
  exports.transferNameOwnership = transferNameOwnership;
@@ -110,8 +103,8 @@ exports.transferNameOwnership = transferNameOwnership;
110
103
  * @returns
111
104
  */
112
105
  async function deleteNameRegistry(connection, name, refundTargetKey, nameClass, nameParent) {
113
- const hashed_name = await utils_2.getHashedName(name);
114
- const nameAccountKey = await utils_2.getNameAccountKey(hashed_name, nameClass, nameParent);
106
+ const hashed_name = await (0, utils_1.getHashedName)(name);
107
+ const nameAccountKey = await (0, utils_1.getNameAccountKey)(hashed_name, nameClass, nameParent);
115
108
  let nameOwner;
116
109
  if (nameClass) {
117
110
  nameOwner = nameClass;
@@ -120,7 +113,7 @@ async function deleteNameRegistry(connection, name, refundTargetKey, nameClass,
120
113
  nameOwner = (await state_1.NameRegistryState.retrieve(connection, nameAccountKey))
121
114
  .registry.owner;
122
115
  }
123
- const changeAuthoritiesInstr = instructions_1.deleteInstruction(exports.NAME_PROGRAM_ID, nameAccountKey, refundTargetKey, nameOwner);
116
+ const changeAuthoritiesInstr = (0, instructions_1.deleteInstruction)(constants_1.NAME_PROGRAM_ID, nameAccountKey, refundTargetKey, nameOwner);
124
117
  return changeAuthoritiesInstr;
125
118
  }
126
119
  exports.deleteNameRegistry = deleteNameRegistry;
@@ -133,13 +126,13 @@ exports.deleteNameRegistry = deleteNameRegistry;
133
126
  * @returns
134
127
  */
135
128
  const registerDomainName = async (name, space, buyer, buyerTokenAccount) => {
136
- const [centralState] = await web3_js_1.PublicKey.findProgramAddress([exports.REGISTER_PROGRAM_ID.toBuffer()], exports.REGISTER_PROGRAM_ID);
137
- const hashed = await utils_2.getHashedName(name);
138
- const nameAccount = await utils_2.getNameAccountKey(hashed, undefined, exports.ROOT_DOMAIN_ACCOUNT);
139
- const hashedReverseLookup = await utils_2.getHashedName(nameAccount.toBase58());
140
- const reverseLookupAccount = await utils_2.getNameAccountKey(hashedReverseLookup, centralState);
141
- const [derived_state] = await web3_js_1.PublicKey.findProgramAddress([nameAccount.toBuffer()], exports.REGISTER_PROGRAM_ID);
142
- const ix = new instructions_1.createV2Instruction({ name, space }).getInstruction(exports.REGISTER_PROGRAM_ID, web3_js_1.SYSVAR_RENT_PUBKEY, exports.NAME_PROGRAM_ID, exports.ROOT_DOMAIN_ACCOUNT, nameAccount, reverseLookupAccount, centralState, buyer, buyerTokenAccount, exports.BONFIDA_FIDA_BNB, derived_state);
129
+ const [centralState] = await web3_js_1.PublicKey.findProgramAddress([constants_1.REGISTER_PROGRAM_ID.toBuffer()], constants_1.REGISTER_PROGRAM_ID);
130
+ const hashed = await (0, utils_1.getHashedName)(name);
131
+ const nameAccount = await (0, utils_1.getNameAccountKey)(hashed, undefined, constants_1.ROOT_DOMAIN_ACCOUNT);
132
+ const hashedReverseLookup = await (0, utils_1.getHashedName)(nameAccount.toBase58());
133
+ const reverseLookupAccount = await (0, utils_1.getNameAccountKey)(hashedReverseLookup, centralState);
134
+ const [derived_state] = await web3_js_1.PublicKey.findProgramAddress([nameAccount.toBuffer()], constants_1.REGISTER_PROGRAM_ID);
135
+ const ix = new instructions_1.createV2Instruction({ name, space }).getInstruction(constants_1.REGISTER_PROGRAM_ID, web3_js_1.SYSVAR_RENT_PUBKEY, constants_1.NAME_PROGRAM_ID, constants_1.ROOT_DOMAIN_ACCOUNT, nameAccount, reverseLookupAccount, centralState, buyer, buyerTokenAccount, constants_1.BONFIDA_FIDA_BNB, derived_state);
143
136
  return [[], [ix]];
144
137
  };
145
138
  exports.registerDomainName = registerDomainName;
@@ -1 +1 @@
1
- {"version":3,"file":"bindings.js","sourceRoot":"","sources":["../src/bindings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bindings.js","sourceRoot":"","sources":["../src/bindings.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import { PublicKey } from "@solana/web3.js";
2
+ /**
3
+ * The Solana Name Service program ID
4
+ */
5
+ export declare const NAME_PROGRAM_ID: PublicKey;
6
+ /**
7
+ * Hash prefix used to derive domain name addresses
8
+ */
9
+ export declare const HASH_PREFIX = "SPL Name Service";
10
+ /**
11
+ * The `.sol` TLD
12
+ */
13
+ export declare const ROOT_DOMAIN_ACCOUNT: PublicKey;
14
+ /**
15
+ * The Registry program ID
16
+ */
17
+ export declare const REGISTER_PROGRAM_ID: PublicKey;
18
+ /**
19
+ * The FIDA Pyth price feed
20
+ */
21
+ export declare const PYTH_FIDDA_PRICE_ACC: PublicKey;
22
+ /**
23
+ * The FIDA buy and burn address
24
+ */
25
+ export declare const BONFIDA_FIDA_BNB: PublicKey;
26
+ /**
27
+ * The reverse look up class
28
+ */
29
+ export declare const REVERSE_LOOKUP_CLASS: PublicKey;
30
+ /**
31
+ * The `.twitter` TLD authority
32
+ */
33
+ export declare const TWITTER_VERIFICATION_AUTHORITY: PublicKey;
34
+ /**
35
+ * The `.twitter` TLD
36
+ */
37
+ export declare const TWITTER_ROOT_PARENT_REGISTRY_KEY: PublicKey;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TWITTER_ROOT_PARENT_REGISTRY_KEY = exports.TWITTER_VERIFICATION_AUTHORITY = exports.REVERSE_LOOKUP_CLASS = exports.BONFIDA_FIDA_BNB = exports.PYTH_FIDDA_PRICE_ACC = exports.REGISTER_PROGRAM_ID = exports.ROOT_DOMAIN_ACCOUNT = exports.HASH_PREFIX = exports.NAME_PROGRAM_ID = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ /**
6
+ * The Solana Name Service program ID
7
+ */
8
+ exports.NAME_PROGRAM_ID = new web3_js_1.PublicKey("namesLPneVptA9Z5rqUDD9tMTWEJwofgaYwp8cawRkX");
9
+ /**
10
+ * Hash prefix used to derive domain name addresses
11
+ */
12
+ exports.HASH_PREFIX = "SPL Name Service";
13
+ /**
14
+ * The `.sol` TLD
15
+ */
16
+ exports.ROOT_DOMAIN_ACCOUNT = new web3_js_1.PublicKey("58PwtjSDuFHuUkYjH9BYnnQKHfwo9reZhC2zMJv9JPkx");
17
+ /**
18
+ * The Registry program ID
19
+ */
20
+ exports.REGISTER_PROGRAM_ID = new web3_js_1.PublicKey("jCebN34bUfdeUYJT13J1yG16XWQpt5PDx6Mse9GUqhR");
21
+ /**
22
+ * The FIDA Pyth price feed
23
+ */
24
+ exports.PYTH_FIDDA_PRICE_ACC = new web3_js_1.PublicKey("ETp9eKXVv1dWwHSpsXRUuXHmw24PwRkttCGVgpZEY9zF");
25
+ /**
26
+ * The FIDA buy and burn address
27
+ */
28
+ exports.BONFIDA_FIDA_BNB = new web3_js_1.PublicKey("AUoZ3YAhV3b2rZeEH93UMZHXUZcTramBvb4d9YEVySkc");
29
+ /**
30
+ * The reverse look up class
31
+ */
32
+ exports.REVERSE_LOOKUP_CLASS = new web3_js_1.PublicKey("33m47vH6Eav6jr5Ry86XjhRft2jRBLDnDgPSHoquXi2Z");
33
+ /**
34
+ * The `.twitter` TLD authority
35
+ */
36
+ exports.TWITTER_VERIFICATION_AUTHORITY = new web3_js_1.PublicKey("FvPH7PrVrLGKPfqaf3xJodFTjZriqrAXXLTVWEorTFBi");
37
+ /**
38
+ * The `.twitter` TLD
39
+ */
40
+ exports.TWITTER_ROOT_PARENT_REGISTRY_KEY = new web3_js_1.PublicKey("4YcexoW3r78zz16J2aqmukBLRwGq6rAvWzJpkYAXqebv");
41
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAE5C;;GAEG;AACU,QAAA,eAAe,GAAG,IAAI,mBAAS,CAC1C,6CAA6C,CAC9C,CAAC;AAEF;;GAEG;AACU,QAAA,WAAW,GAAG,kBAAkB,CAAC;AAE9C;;GAEG;AACU,QAAA,mBAAmB,GAAG,IAAI,mBAAS,CAC9C,8CAA8C,CAC/C,CAAC;AAEF;;GAEG;AACU,QAAA,mBAAmB,GAAG,IAAI,mBAAS,CAC9C,6CAA6C,CAC9C,CAAC;AAEF;;GAEG;AACU,QAAA,oBAAoB,GAAG,IAAI,mBAAS,CAC/C,8CAA8C,CAC/C,CAAC;AAEF;;GAEG;AACU,QAAA,gBAAgB,GAAG,IAAI,mBAAS,CAC3C,8CAA8C,CAC/C,CAAC;AAEF;;GAEG;AACU,QAAA,oBAAoB,GAAG,IAAI,mBAAS,CAC/C,8CAA8C,CAC/C,CAAC;AAEF;;GAEG;AACU,QAAA,8BAA8B,GAAG,IAAI,mBAAS,CACzD,8CAA8C,CAC/C,CAAC;AAEF;;GAEG;AACU,QAAA,gCAAgC,GAAG,IAAI,mBAAS,CAC3D,8CAA8C,CAC/C,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { PublicKey, Connection } from "@solana/web3.js";
2
+ /**
3
+ * This function can be used to retrieve the favorite domain of a user
4
+ * @param connection The Solana RPC connection object
5
+ * @param owner The owner you want to retrieve the favorite domain for
6
+ * @returns
7
+ */
8
+ export declare const getFavoriteDomain: (connection: Connection, owner: PublicKey) => Promise<{
9
+ domain: PublicKey;
10
+ reverse: string;
11
+ }>;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getFavoriteDomain = void 0;
4
+ const name_offers_1 = require("@bonfida/name-offers");
5
+ const utils_1 = require("./utils");
6
+ const web3_js_1 = require("@solana/web3.js");
7
+ /**
8
+ * This function can be used to retrieve the favorite domain of a user
9
+ * @param connection The Solana RPC connection object
10
+ * @param owner The owner you want to retrieve the favorite domain for
11
+ * @returns
12
+ */
13
+ const getFavoriteDomain = async (connection, owner) => {
14
+ const [favKey] = await name_offers_1.FavouriteDomain.getKey(name_offers_1.NAME_OFFERS_ID, new web3_js_1.PublicKey(owner));
15
+ const favorite = await name_offers_1.FavouriteDomain.retrieve(connection, favKey);
16
+ const reverse = await (0, utils_1.performReverseLookup)(connection, favorite.nameAccount);
17
+ return { domain: favorite.nameAccount, reverse };
18
+ };
19
+ exports.getFavoriteDomain = getFavoriteDomain;
20
+ //# sourceMappingURL=favorite-domain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"favorite-domain.js","sourceRoot":"","sources":["../src/favorite-domain.ts"],"names":[],"mappings":";;;AAAA,sDAAuE;AACvE,mCAA+C;AAC/C,6CAAwD;AAExD;;;;;GAKG;AACI,MAAM,iBAAiB,GAAG,KAAK,EACpC,UAAsB,EACtB,KAAgB,EAChB,EAAE;IACF,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,6BAAe,CAAC,MAAM,CAC3C,4BAAc,EACd,IAAI,mBAAS,CAAC,KAAK,CAAC,CACrB,CAAC;IAEF,MAAM,QAAQ,GAAG,MAAM,6BAAe,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAEpE,MAAM,OAAO,GAAG,MAAM,IAAA,4BAAoB,EAAC,UAAU,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;IAE7E,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;AACnD,CAAC,CAAC;AAdW,QAAA,iBAAiB,qBAc5B"}
package/dist/index.d.ts CHANGED
@@ -6,3 +6,8 @@ export * from "./tokens";
6
6
  export * from "./utils";
7
7
  export * from "./instructions";
8
8
  export * from "./nft";
9
+ export * from "./favorite-domain";
10
+ export * from "./constants";
11
+ export * from "./int";
12
+ export * from "./record";
13
+ export * from "./types/record";
package/dist/index.js CHANGED
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -18,4 +22,9 @@ __exportStar(require("./tokens"), exports);
18
22
  __exportStar(require("./utils"), exports);
19
23
  __exportStar(require("./instructions"), exports);
20
24
  __exportStar(require("./nft"), exports);
25
+ __exportStar(require("./favorite-domain"), exports);
26
+ __exportStar(require("./constants"), exports);
27
+ __exportStar(require("./int"), exports);
28
+ __exportStar(require("./record"), exports);
29
+ __exportStar(require("./types/record"), exports);
21
30
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAwB;AACxB,6CAA2B;AAC3B,0CAAwB;AACxB,qDAAmC;AACnC,2CAAyB;AACzB,0CAAwB;AACxB,iDAA+B;AAC/B,wCAAsB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,6CAA2B;AAC3B,0CAAwB;AACxB,qDAAmC;AACnC,2CAAyB;AACzB,0CAAwB;AACxB,iDAA+B;AAC/B,wCAAsB;AACtB,oDAAkC;AAClC,8CAA4B;AAC5B,wCAAsB;AACtB,2CAAyB;AACzB,iDAA+B"}
@@ -1,6 +1,6 @@
1
1
  /// <reference types="node" />
2
2
  import { PublicKey, TransactionInstruction } from "@solana/web3.js";
3
- import { Numberu32, Numberu64 } from "./utils";
3
+ import { Numberu32, Numberu64 } from "./int";
4
4
  import { Schema } from "borsh";
5
5
  export declare function createInstruction(nameProgramId: PublicKey, systemProgramId: PublicKey, nameKey: PublicKey, nameOwnerKey: PublicKey, payerKey: PublicKey, hashed_name: Buffer, lamports: Numberu64, space: Numberu32, nameClassKey?: PublicKey, nameParent?: PublicKey, nameParentOwner?: PublicKey): TransactionInstruction;
6
6
  export declare function updateInstruction(nameProgramId: PublicKey, nameAccountKey: PublicKey, offset: Numberu32, input_data: Buffer, nameUpdateSigner: PublicKey): TransactionInstruction;
@@ -3,14 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createV2Instruction = exports.deleteInstruction = exports.transferInstruction = exports.updateInstruction = exports.createInstruction = void 0;
4
4
  const web3_js_1 = require("@solana/web3.js");
5
5
  const spl_token_1 = require("@solana/spl-token");
6
- const utils_1 = require("./utils");
6
+ const int_1 = require("./int");
7
7
  const borsh_1 = require("borsh");
8
- const bindings_1 = require("./bindings");
8
+ const constants_1 = require("./constants");
9
9
  function createInstruction(nameProgramId, systemProgramId, nameKey, nameOwnerKey, payerKey, hashed_name, lamports, space, nameClassKey, nameParent, nameParentOwner) {
10
10
  const buffers = [
11
11
  Buffer.from(Int8Array.from([0])),
12
12
  //@ts-ignore
13
- new utils_1.Numberu32(hashed_name.length).toBuffer(),
13
+ new int_1.Numberu32(hashed_name.length).toBuffer(),
14
14
  hashed_name,
15
15
  lamports.toBuffer(),
16
16
  space.toBuffer(),
@@ -85,7 +85,7 @@ function updateInstruction(nameProgramId, nameAccountKey, offset, input_data, na
85
85
  Buffer.from(Int8Array.from([1])),
86
86
  offset.toBuffer(),
87
87
  //@ts-ignore
88
- new utils_1.Numberu32(input_data.length).toBuffer(),
88
+ new int_1.Numberu32(input_data.length).toBuffer(),
89
89
  input_data,
90
90
  ];
91
91
  const data = Buffer.concat(buffers);
@@ -185,7 +185,7 @@ class createV2Instruction {
185
185
  this.space = obj.space;
186
186
  }
187
187
  serialize() {
188
- return borsh_1.serialize(createV2Instruction.schema, this);
188
+ return (0, borsh_1.serialize)(createV2Instruction.schema, this);
189
189
  }
190
190
  getInstruction(programId, rentSysvarAccount, nameProgramId, rootDomain, nameAccount, reverseLookupAccount, centralState, buyer, buyerTokenAccount, fidaVault, state) {
191
191
  const data = Buffer.from(this.serialize());
@@ -236,7 +236,7 @@ class createV2Instruction {
236
236
  isWritable: true,
237
237
  },
238
238
  {
239
- pubkey: bindings_1.PYTH_FIDDA_PRICE_ACC,
239
+ pubkey: constants_1.PYTH_FIDDA_PRICE_ACC,
240
240
  isSigner: false,
241
241
  isWritable: false,
242
242
  },
@@ -1 +1 @@
1
- {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"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"}
package/dist/int.d.ts ADDED
@@ -0,0 +1,22 @@
1
+ /// <reference types="node" />
2
+ import BN from "bn.js";
3
+ export declare class Numberu32 extends BN {
4
+ /**
5
+ * Convert to Buffer representation
6
+ */
7
+ toBuffer(): Buffer;
8
+ /**
9
+ * Construct a Numberu64 from Buffer representation
10
+ */
11
+ static fromBuffer(buffer: any): BN;
12
+ }
13
+ export declare class Numberu64 extends BN {
14
+ /**
15
+ * Convert to Buffer representation
16
+ */
17
+ toBuffer(): Buffer;
18
+ /**
19
+ * Construct a Numberu64 from Buffer representation
20
+ */
21
+ static fromBuffer(buffer: any): BN;
22
+ }
package/dist/int.js ADDED
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Numberu64 = exports.Numberu32 = void 0;
7
+ const bn_js_1 = __importDefault(require("bn.js"));
8
+ class Numberu32 extends bn_js_1.default {
9
+ /**
10
+ * Convert to Buffer representation
11
+ */
12
+ toBuffer() {
13
+ const a = super.toArray().reverse();
14
+ const b = Buffer.from(a);
15
+ if (b.length === 4) {
16
+ return b;
17
+ }
18
+ if (b.length > 4) {
19
+ throw new Error("Numberu32 too large");
20
+ }
21
+ const zeroPad = Buffer.alloc(4);
22
+ b.copy(zeroPad);
23
+ return zeroPad;
24
+ }
25
+ /**
26
+ * Construct a Numberu64 from Buffer representation
27
+ */
28
+ static fromBuffer(buffer) {
29
+ if (buffer.length !== 4) {
30
+ throw new Error(`Invalid buffer length: ${buffer.length}`);
31
+ }
32
+ return new bn_js_1.default([...buffer]
33
+ .reverse()
34
+ .map((i) => `00${i.toString(16)}`.slice(-2))
35
+ .join(""), 16);
36
+ }
37
+ }
38
+ exports.Numberu32 = Numberu32;
39
+ class Numberu64 extends bn_js_1.default {
40
+ /**
41
+ * Convert to Buffer representation
42
+ */
43
+ toBuffer() {
44
+ const a = super.toArray().reverse();
45
+ const b = Buffer.from(a);
46
+ if (b.length === 8) {
47
+ return b;
48
+ }
49
+ if (b.length > 8) {
50
+ throw new Error("Numberu64 too large");
51
+ }
52
+ const zeroPad = Buffer.alloc(8);
53
+ b.copy(zeroPad);
54
+ return zeroPad;
55
+ }
56
+ /**
57
+ * Construct a Numberu64 from Buffer representation
58
+ */
59
+ static fromBuffer(buffer) {
60
+ if (buffer.length !== 8) {
61
+ throw new Error(`Invalid buffer length: ${buffer.length}`);
62
+ }
63
+ return new bn_js_1.default([...buffer]
64
+ .reverse()
65
+ .map((i) => `00${i.toString(16)}`.slice(-2))
66
+ .join(""), 16);
67
+ }
68
+ }
69
+ exports.Numberu64 = Numberu64;
70
+ //# sourceMappingURL=int.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"int.js","sourceRoot":"","sources":["../src/int.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAuB;AAEvB,MAAa,SAAU,SAAQ,eAAE;IAC/B;;OAEG;IACH,QAAQ;QACN,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC;QACpC,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YAClB,OAAO,CAAC,CAAC;SACV;QACD,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;SACxC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChB,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM;QACtB,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACvB,MAAM,IAAI,KAAK,CAAC,0BAA0B,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;SAC5D;QAED,OAAO,IAAI,eAAE,CACX,CAAC,GAAG,MAAM,CAAC;aACR,OAAO,EAAE;aACT,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3C,IAAI,CAAC,EAAE,CAAC,EACX,EAAE,CACH,CAAC;IACJ,CAAC;CACF;AAnCD,8BAmCC;AAED,MAAa,SAAU,SAAQ,eAAE;IAC/B;;OAEG;IACH,QAAQ;QACN,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC;QACpC,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YAClB,OAAO,CAAC,CAAC;SACV;QAED,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;SACxC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChB,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM;QACtB,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACvB,MAAM,IAAI,KAAK,CAAC,0BAA0B,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;SAC5D;QACD,OAAO,IAAI,eAAE,CACX,CAAC,GAAG,MAAM,CAAC;aACR,OAAO,EAAE;aACT,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3C,IAAI,CAAC,EAAE,CAAC,EACX,EAAE,CACH,CAAC;IACJ,CAAC;CACF;AAnCD,8BAmCC"}
package/dist/nft.js CHANGED
@@ -22,7 +22,7 @@ const retrieveNftOwner = async (connection, nameAccount) => {
22
22
  var _a;
23
23
  try {
24
24
  const [mint] = await web3_js_1.PublicKey.findProgramAddress([exports.MINT_PREFIX, nameAccount.toBuffer()], exports.NAME_TOKENIZER_ID);
25
- const mintInfo = await spl_token_1.getMint(connection, mint);
25
+ const mintInfo = await (0, spl_token_1.getMint)(connection, mint);
26
26
  if (mintInfo.supply.toString() === "0") {
27
27
  return undefined;
28
28
  }
package/dist/nft.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"nft.js","sourceRoot":"","sources":["../src/nft.ts"],"names":[],"mappings":";;;AAAA,6CAAwD;AACxD,iDAA4C;AAE5C;;GAEG;AACU,QAAA,iBAAiB,GAAG,IAAI,mBAAS,CAC5C,6CAA6C,CAC9C,CAAC;AAEF;;GAEG;AACU,QAAA,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAEzD;;;;;;GAMG;AACI,MAAM,gBAAgB,GAAG,KAAK,EACnC,UAAsB,EACtB,WAAsB,EACtB,EAAE;;IACF,IAAI;QACF,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,mBAAS,CAAC,kBAAkB,CAC/C,CAAC,mBAAW,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,EACrC,yBAAiB,CAClB,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,mBAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACjD,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,GAAG,EAAE;YACtC,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,UAAU,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAEjE,MAAM,MAAM,GAAG,MAAA,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC,0CAAE,OAAO,CAAC;QAC5D,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACvB,OAAO,SAAS,CAAC;SAClB;QAED,OAAO,IAAI,mBAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;KAC/C;IAAC,MAAM;QACN,OAAO,SAAS,CAAC;KAClB;AACH,CAAC,CAAC;AA/BW,QAAA,gBAAgB,oBA+B3B;AAEF;;;;;GAKG;AACI,MAAM,YAAY,GAAG,KAAK,EAAE,UAAsB,EAAE,EAAE;IAC3D,MAAM,OAAO,GAAG;QACd;YACE,MAAM,EAAE;gBACN,MAAM,EAAE,CAAC;gBACT,KAAK,EAAE,GAAG;aACX;SACF;KACF,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,kBAAkB,CAAC,yBAAiB,EAAE;QACpE,OAAO;KACR,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IAC/B,OAAO,MAAM,CAAC,GAAG,CACf,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,mBAAS,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,CAAC,CAAC,CAChE,CAAC;AACJ,CAAC,CAAC;AAjBW,QAAA,YAAY,gBAiBvB"}
1
+ {"version":3,"file":"nft.js","sourceRoot":"","sources":["../src/nft.ts"],"names":[],"mappings":";;;AAAA,6CAAwD;AACxD,iDAA4C;AAE5C;;GAEG;AACU,QAAA,iBAAiB,GAAG,IAAI,mBAAS,CAC5C,6CAA6C,CAC9C,CAAC;AAEF;;GAEG;AACU,QAAA,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAEzD;;;;;;GAMG;AACI,MAAM,gBAAgB,GAAG,KAAK,EACnC,UAAsB,EACtB,WAAsB,EACtB,EAAE;;IACF,IAAI;QACF,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,mBAAS,CAAC,kBAAkB,CAC/C,CAAC,mBAAW,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,EACrC,yBAAiB,CAClB,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAA,mBAAO,EAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACjD,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,GAAG,EAAE;YACtC,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,UAAU,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAEjE,MAAM,MAAM,GAAG,MAAA,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC,0CAAE,OAAO,CAAC;QAC5D,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACvB,OAAO,SAAS,CAAC;SAClB;QAED,OAAO,IAAI,mBAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;KAC/C;IAAC,MAAM;QACN,OAAO,SAAS,CAAC;KAClB;AACH,CAAC,CAAC;AA/BW,QAAA,gBAAgB,oBA+B3B;AAEF;;;;;GAKG;AACI,MAAM,YAAY,GAAG,KAAK,EAAE,UAAsB,EAAE,EAAE;IAC3D,MAAM,OAAO,GAAG;QACd;YACE,MAAM,EAAE;gBACN,MAAM,EAAE,CAAC;gBACT,KAAK,EAAE,GAAG;aACX;SACF;KACF,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,kBAAkB,CAAC,yBAAiB,EAAE;QACpE,OAAO;KACR,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IAC/B,OAAO,MAAM,CAAC,GAAG,CACf,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,mBAAS,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,CAAC,CAAC,CAChE,CAAC;AACJ,CAAC,CAAC;AAjBW,QAAA,YAAY,gBAiBvB"}
@@ -0,0 +1,102 @@
1
+ import { Record } from "./types/record";
2
+ import { Connection } from "@solana/web3.js";
3
+ import { NameRegistryState } from "./state";
4
+ /**
5
+ * This function can be used to retrieve a specified record for the given domain name
6
+ * @param connection The Solana RPC connection object
7
+ * @param domain The .sol domain name
8
+ * @param record The record to search for
9
+ * @returns
10
+ */
11
+ export declare const getRecord: (connection: Connection, domain: string, record: Record) => Promise<NameRegistryState>;
12
+ /**
13
+ * This function can be used to retrieve the IPFS record of a domain name
14
+ * @param connection The Solana RPC connection object
15
+ * @param domain The .sol domain name
16
+ * @returns
17
+ */
18
+ export declare const getIpfsRecord: (connection: Connection, domain: string) => Promise<NameRegistryState>;
19
+ /**
20
+ * This function can be used to retrieve the Arweave record of a domain name
21
+ * @param connection The Solana RPC connection object
22
+ * @param domain The .sol domain name
23
+ * @returns
24
+ */
25
+ export declare const getArweaveRecord: (connection: Connection, domain: string) => Promise<NameRegistryState>;
26
+ /**
27
+ * This function can be used to retrieve the ETH record of a domain name
28
+ * @param connection The Solana RPC connection object
29
+ * @param domain The .sol domain name
30
+ * @returns
31
+ */
32
+ export declare const getEthRecord: (connection: Connection, domain: string) => Promise<NameRegistryState>;
33
+ /**
34
+ * This function can be used to retrieve the BTC record of a domain name
35
+ * @param connection The Solana RPC connection object
36
+ * @param domain The .sol domain name
37
+ * @returns
38
+ */
39
+ export declare const getBtcRecord: (connection: Connection, domain: string) => Promise<NameRegistryState>;
40
+ /**
41
+ * This function can be used to retrieve the LTC record of a domain name
42
+ * @param connection The Solana RPC connection object
43
+ * @param domain The .sol domain name
44
+ * @returns
45
+ */
46
+ export declare const getLtcRecord: (connection: Connection, domain: string) => Promise<NameRegistryState>;
47
+ /**
48
+ * This function can be used to retrieve the DOGE record of a domain name
49
+ * @param connection The Solana RPC connection object
50
+ * @param domain The .sol domain name
51
+ * @returns
52
+ */
53
+ export declare const getDogeRecord: (connection: Connection, domain: string) => Promise<NameRegistryState>;
54
+ /**
55
+ * This function can be used to retrieve the email record of a domain name
56
+ * @param connection The Solana RPC connection object
57
+ * @param domain The .sol domain name
58
+ * @returns
59
+ */
60
+ export declare const getEmailRecord: (connection: Connection, domain: string) => Promise<NameRegistryState>;
61
+ /**
62
+ * This function can be used to retrieve the URL record of a domain name
63
+ * @param connection The Solana RPC connection object
64
+ * @param domain The .sol domain name
65
+ * @returns
66
+ */
67
+ export declare const getUrlRecord: (connection: Connection, domain: string) => Promise<NameRegistryState>;
68
+ /**
69
+ * This function can be used to retrieve the Discord record of a domain name
70
+ * @param connection The Solana RPC connection object
71
+ * @param domain The .sol domain name
72
+ * @returns
73
+ */
74
+ export declare const getDiscordRecord: (connection: Connection, domain: string) => Promise<NameRegistryState>;
75
+ /**
76
+ * This function can be used to retrieve the Github record of a domain name
77
+ * @param connection The Solana RPC connection object
78
+ * @param domain The .sol domain name
79
+ * @returns
80
+ */
81
+ export declare const getGithubRecord: (connection: Connection, domain: string) => Promise<NameRegistryState>;
82
+ /**
83
+ * This function can be used to retrieve the Reddit record of a domain name
84
+ * @param connection The Solana RPC connection object
85
+ * @param domain The .sol domain name
86
+ * @returns
87
+ */
88
+ export declare const getRedditRecord: (connection: Connection, domain: string) => Promise<NameRegistryState>;
89
+ /**
90
+ * This function can be used to retrieve the Twitter record of a domain name
91
+ * @param connection The Solana RPC connection object
92
+ * @param domain The .sol domain name
93
+ * @returns
94
+ */
95
+ export declare const getTwitterRecord: (connection: Connection, domain: string) => Promise<NameRegistryState>;
96
+ /**
97
+ * This function can be used to retrieve the Telegram record of a domain name
98
+ * @param connection The Solana RPC connection object
99
+ * @param domain The .sol domain name
100
+ * @returns
101
+ */
102
+ export declare const getTelegramRecord: (connection: Connection, domain: string) => Promise<NameRegistryState>;