@ensnode/ensdb-sdk 1.10.1 → 1.11.0

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.
@@ -1,7 +1,7 @@
1
1
  import * as drizzle_orm_pg_core from 'drizzle-orm/pg-core';
2
2
  import * as drizzle_orm from 'drizzle-orm';
3
3
  import * as ponder from 'ponder';
4
- import { DomainId, InterpretedLabel, PermissionsId, PermissionsResourceId, PermissionsUserId, RegistrationId, RegistryId, ENSv2DomainId, RenewalId, ResolverId, ENSv1DomainId, ResolverRecordsId, InterpretedName } from 'enssdk';
4
+ import { DomainId, RegistryId, InterpretedLabel, PermissionsId, PermissionsResourceId, PermissionsUserId, RegistrationId, RenewalId, ResolverId, ResolverRecordsId, InterpretedName } from 'enssdk';
5
5
 
6
6
  /**
7
7
  * The ENSv2 Schema
@@ -19,20 +19,16 @@ import { DomainId, InterpretedLabel, PermissionsId, PermissionsResourceId, Permi
19
19
  * it's more expensive for us to recursively traverse the namegraph (like evm code does) because our
20
20
  * individual roundtrips from the db are relatively more expensive.
21
21
  *
22
- * For the datamodel, this means that instead of a polymorphic Domain entity, representing both v1
23
- * and v2 Domains, this schema employs separate (but overlapping) v1Domains and v2Domains entities.
24
- * This avoids resolution-time complications and more accurately represents the on-chain state.
25
- * Domain polymorphism is applied at the API later, via GraphQL Interfaces, to simplify queries.
26
- *
27
22
  * In general: the indexed schema should match on-chain state as closely as possible, and
28
23
  * resolution-time behavior within the ENS protocol should _also_ be implemented at resolution time
29
- * in ENSApi. The current obvious exception to this is that v1Domain.owner is the _materialized_
30
- * _effective_ owner of the v1Domain. ENSv1 includes a mind-boggling number of ways to 'own' a v1Domain,
24
+ * in ENSApi. The current obvious exception is that `domain.ownerId` for ENSv1 Domains is the
25
+ * _materialized_ _effective_ owner. ENSv1 includes a diverse number of ways to 'own' a domain,
31
26
  * including the ENSv1 Registry, various Registrars, and the NameWrapper. The ENSv1 indexing logic
32
- * within this ENSv2 plugin materialize the v1Domain's effective owner to simplify this aspect of ENS,
33
- * and enable efficient queries against v1Domain.owner.
27
+ * within this ENSv2 plugin materializes the effective owner to simplify this aspect of ENS and
28
+ * enable efficient queries against `domain.ownerId`.
34
29
  *
35
- * Many datamodels are shared between ENSv1 and ENSv2, including Registrations, Renewals, and Resolvers.
30
+ * When necessary, all datamodels are shared or polymorphic between ENSv1 and ENSv2, including
31
+ * Domains, Registries, Registrations, Renewals, and Resolvers.
36
32
  *
37
33
  * Registrations are polymorphic between the defined RegistrationTypes, depending on the associated
38
34
  * guarantees (for example, ENSv1 BaseRegistrar Registrations may have a gracePeriod, but ENSv2
@@ -43,20 +39,18 @@ import { DomainId, InterpretedLabel, PermissionsId, PermissionsResourceId, Permi
43
39
  * new label is encountered onchain, all Domains that use that label are automatically healed at
44
40
  * resolution-time.
45
41
  *
46
- * v1Domains exist in a flat namespace and are absolutely addressed by `node`. As such, they describe
47
- * a simple tree datamodel of:
48
- * v1Domain -> v1Domain(s) -> v1Domain(s) -> ...etc
49
- *
50
- * v2Domains exist in a set of namegraphs. Each namegraph is a possibly cicular directed graph of
51
- * (Root)Registry -> v2Domain(s) -> (sub)Regsitry -> v2Domain(s) -> ...etc
52
- * with exactly one RootRegistry on the ENS Root Chain establishing the beginning of the _canonical_
53
- * namegraph. As discussed above, the canonical namegraph is never materialized, only _navigated_
54
- * at resolution-time, in order to correctly implement the complexities of the ENS protocol.
42
+ * ENSv1 and ENSv2 both fit the Registry Domain (Sub)Registry Domain ... namegraph model.
43
+ * For ENSv1, each domain that has children implicitly owns a "virtual" Registry (a row of type
44
+ * `ENSv1VirtualRegistry`) whose sole parent is that domain; children of the parent then point their
45
+ * `registryId` at the virtual registry. Concrete `ENSv1Registry` rows (e.g. the mainnet ENS Registry,
46
+ * the Basenames Registry, the Lineanames Registry) sit at the top. ENSv2 namegraphs are rooted in
47
+ * a single `ENSv2Registry` RootRegistry on the ENS Root Chain and are possibly circular directed
48
+ * graphs. The canonical namegraph is never materialized, only _navigated_ at resolution-time.
55
49
  *
56
50
  * Note also that the Protocol Acceleration plugin is a hard requirement for the ENSv2 plugin. This
57
51
  * allows us to rely on the shared logic for indexing:
58
52
  * a) ENSv1RegistryOld -> ENSv1Registry migration status
59
- * b) Domain-Resolver Relations for both v1Domains and v2Domains
53
+ * b) Domain-Resolver Relations for both ENSv1 and ENSv2 Domains
60
54
  * As such, none of that information is present in this ensv2.schema.ts file.
61
55
  *
62
56
  * In general, entities are keyed by a nominally-typed `id` that uniquely references them. This
@@ -64,6 +58,9 @@ import { DomainId, InterpretedLabel, PermissionsId, PermissionsResourceId, Permi
64
58
  * deeply nested entities by a straightforward string ID. In cases where an entity's `id` is composed
65
59
  * of multiple pieces of information (for example, a Registry is identified by (chainId, address)),
66
60
  * then that information is, as well, included in the entity's columns, not just encoded in the id.
61
+ * Nowhere in this application, nor in user applications, should an entity's id be parsed for its
62
+ * constituent parts; all should be available, with their various type guarantees, on the entity
63
+ * itself.
67
64
  *
68
65
  * Events are structured as a single "events" table which tracks EVM Event Metadata for any on-chain
69
66
  * Event. Then, join tables (DomainEvent, ResolverEvent, etc) track the relationship between an
@@ -93,11 +90,30 @@ declare const event: ponder.OnchainTable<{
93
90
  identity: undefined;
94
91
  generated: undefined;
95
92
  }, {}, {}>;
93
+ sender: ponder.PgColumn<{
94
+ name: "sender";
95
+ tableName: "events";
96
+ dataType: "string";
97
+ columnType: "PgHex";
98
+ data: `0x${string}`;
99
+ driverParam: string;
100
+ notNull: true;
101
+ hasDefault: false;
102
+ isPrimaryKey: false;
103
+ isAutoincrement: false;
104
+ hasRuntimeDefault: false;
105
+ enumValues: undefined;
106
+ baseColumn: never;
107
+ identity: undefined;
108
+ generated: undefined;
109
+ }, {}, {
110
+ $type: `0x${string}`;
111
+ }>;
96
112
  chainId: ponder.PgColumn<{
97
113
  name: "chainId";
98
114
  tableName: "events";
99
115
  dataType: "number";
100
- columnType: "PgInteger";
116
+ columnType: "PgBigInt53";
101
117
  data: number;
102
118
  driverParam: string | number;
103
119
  notNull: true;
@@ -366,6 +382,7 @@ declare const event: ponder.OnchainTable<{
366
382
  extra: {
367
383
  bySelector: drizzle_orm_pg_core.IndexBuilder;
368
384
  byFrom: drizzle_orm_pg_core.IndexBuilder;
385
+ bySender: drizzle_orm_pg_core.IndexBuilder;
369
386
  byTimestamp: drizzle_orm_pg_core.IndexBuilder;
370
387
  };
371
388
  dialect: "pg";
@@ -508,6 +525,52 @@ declare const permissionsEvent: ponder.OnchainTable<{
508
525
  };
509
526
  dialect: "pg";
510
527
  }>;
528
+ declare const permissionsUserEvent: ponder.OnchainTable<{
529
+ name: "permissions_user_events";
530
+ schema: undefined;
531
+ columns: {
532
+ permissionsUserId: ponder.PgColumn<{
533
+ name: "permissionsUserId";
534
+ tableName: "permissions_user_events";
535
+ dataType: "string";
536
+ columnType: "PgText";
537
+ data: PermissionsUserId;
538
+ driverParam: string;
539
+ notNull: true;
540
+ hasDefault: false;
541
+ isPrimaryKey: false;
542
+ isAutoincrement: false;
543
+ hasRuntimeDefault: false;
544
+ enumValues: [string, ...string[]];
545
+ baseColumn: never;
546
+ identity: undefined;
547
+ generated: undefined;
548
+ }, {}, {
549
+ $type: PermissionsUserId;
550
+ }>;
551
+ eventId: ponder.PgColumn<{
552
+ name: "eventId";
553
+ tableName: "permissions_user_events";
554
+ dataType: "string";
555
+ columnType: "PgText";
556
+ data: string;
557
+ driverParam: string;
558
+ notNull: true;
559
+ hasDefault: false;
560
+ isPrimaryKey: false;
561
+ isAutoincrement: false;
562
+ hasRuntimeDefault: false;
563
+ enumValues: [string, ...string[]];
564
+ baseColumn: never;
565
+ identity: undefined;
566
+ generated: undefined;
567
+ }, {}, {}>;
568
+ };
569
+ extra: {
570
+ pk: ponder.PrimaryKeyBuilder<"eventId" | "permissionsUserId">;
571
+ };
572
+ dialect: "pg";
573
+ }>;
511
574
  declare const account: ponder.OnchainTable<{
512
575
  name: "accounts";
513
576
  schema: undefined;
@@ -537,9 +600,10 @@ declare const account: ponder.OnchainTable<{
537
600
  }>;
538
601
  declare const account_relations: drizzle_orm.Relations<"accounts", {
539
602
  registrations: drizzle_orm.Many<"registrations">;
540
- domains: drizzle_orm.Many<"v2_domains">;
603
+ domains: drizzle_orm.Many<"domains">;
541
604
  permissions: drizzle_orm.Many<"permissions_users">;
542
605
  }>;
606
+ declare const registryType: ponder.OnchainEnum<["ENSv1Registry", "ENSv1VirtualRegistry", "ENSv2Registry"]>;
543
607
  declare const registry: ponder.OnchainTable<{
544
608
  name: "registries";
545
609
  schema: undefined;
@@ -563,11 +627,28 @@ declare const registry: ponder.OnchainTable<{
563
627
  }, {}, {
564
628
  $type: RegistryId;
565
629
  }>;
630
+ type: ponder.PgColumn<{
631
+ name: "type";
632
+ tableName: "registries";
633
+ dataType: "string";
634
+ columnType: "PgEnumColumn";
635
+ data: "ENSv1Registry" | "ENSv1VirtualRegistry" | "ENSv2Registry";
636
+ driverParam: string;
637
+ notNull: true;
638
+ hasDefault: false;
639
+ isPrimaryKey: false;
640
+ isAutoincrement: false;
641
+ hasRuntimeDefault: false;
642
+ enumValues: ["ENSv1Registry", "ENSv1VirtualRegistry", "ENSv2Registry"];
643
+ baseColumn: never;
644
+ identity: undefined;
645
+ generated: undefined;
646
+ }, {}, {}>;
566
647
  chainId: ponder.PgColumn<{
567
648
  name: "chainId";
568
649
  tableName: "registries";
569
650
  dataType: "number";
570
- columnType: "PgInteger";
651
+ columnType: "PgBigInt53";
571
652
  data: number;
572
653
  driverParam: string | number;
573
654
  notNull: true;
@@ -601,27 +682,47 @@ declare const registry: ponder.OnchainTable<{
601
682
  }, {}, {
602
683
  $type: `0x${string}`;
603
684
  }>;
685
+ node: ponder.PgColumn<{
686
+ name: "node";
687
+ tableName: "registries";
688
+ dataType: "string";
689
+ columnType: "PgHex";
690
+ data: `0x${string}`;
691
+ driverParam: string;
692
+ notNull: false;
693
+ hasDefault: false;
694
+ isPrimaryKey: false;
695
+ isAutoincrement: false;
696
+ hasRuntimeDefault: false;
697
+ enumValues: undefined;
698
+ baseColumn: never;
699
+ identity: undefined;
700
+ generated: undefined;
701
+ }, {}, {
702
+ $type: `0x${string}`;
703
+ }>;
604
704
  };
605
705
  extra: {
606
- byId: drizzle_orm_pg_core.IndexBuilder;
706
+ byChainAddress: drizzle_orm_pg_core.IndexBuilder;
607
707
  };
608
708
  dialect: "pg";
609
709
  }>;
610
710
  declare const relations_registry: drizzle_orm.Relations<"registries", {
611
- domain: drizzle_orm.One<"v2_domains", true>;
612
- domains: drizzle_orm.Many<"v2_domains">;
711
+ domains: drizzle_orm.Many<"domains">;
712
+ domainsAsSubregistry: drizzle_orm.Many<"domains">;
613
713
  permissions: drizzle_orm.One<"permissions", true>;
614
714
  }>;
615
- declare const v1Domain: ponder.OnchainTable<{
616
- name: "v1_domains";
715
+ declare const domainType: ponder.OnchainEnum<["ENSv1Domain", "ENSv2Domain"]>;
716
+ declare const domain: ponder.OnchainTable<{
717
+ name: "domains";
617
718
  schema: undefined;
618
719
  columns: {
619
720
  id: ponder.PgColumn<{
620
721
  name: "id";
621
- tableName: "v1_domains";
722
+ tableName: "domains";
622
723
  dataType: "string";
623
724
  columnType: "PgText";
624
- data: ENSv1DomainId;
725
+ data: DomainId;
625
726
  driverParam: string;
626
727
  notNull: true;
627
728
  hasDefault: false;
@@ -633,131 +734,71 @@ declare const v1Domain: ponder.OnchainTable<{
633
734
  identity: undefined;
634
735
  generated: undefined;
635
736
  }, {}, {
636
- $type: ENSv1DomainId;
737
+ $type: DomainId;
637
738
  }>;
638
- parentId: ponder.PgColumn<{
639
- name: "parentId";
640
- tableName: "v1_domains";
739
+ type: ponder.PgColumn<{
740
+ name: "type";
741
+ tableName: "domains";
641
742
  dataType: "string";
642
- columnType: "PgText";
643
- data: ENSv1DomainId;
743
+ columnType: "PgEnumColumn";
744
+ data: "ENSv1Domain" | "ENSv2Domain";
644
745
  driverParam: string;
645
746
  notNull: true;
646
747
  hasDefault: false;
647
748
  isPrimaryKey: false;
648
749
  isAutoincrement: false;
649
750
  hasRuntimeDefault: false;
650
- enumValues: [string, ...string[]];
751
+ enumValues: ["ENSv1Domain", "ENSv2Domain"];
651
752
  baseColumn: never;
652
753
  identity: undefined;
653
754
  generated: undefined;
654
- }, {}, {
655
- $type: ENSv1DomainId;
656
- }>;
657
- ownerId: ponder.PgColumn<{
658
- name: "ownerId";
659
- tableName: "v1_domains";
660
- dataType: "string";
661
- columnType: "PgHex";
662
- data: `0x${string}`;
663
- driverParam: string;
664
- notNull: false;
665
- hasDefault: false;
666
- isPrimaryKey: false;
667
- isAutoincrement: false;
668
- hasRuntimeDefault: false;
669
- enumValues: undefined;
670
- baseColumn: never;
671
- identity: undefined;
672
- generated: undefined;
673
- }, {}, {
674
- $type: `0x${string}`;
675
- }>;
676
- labelHash: ponder.PgColumn<{
677
- name: "labelHash";
678
- tableName: "v1_domains";
755
+ }, {}, {}>;
756
+ registryId: ponder.PgColumn<{
757
+ name: "registryId";
758
+ tableName: "domains";
679
759
  dataType: "string";
680
- columnType: "PgHex";
681
- data: `0x${string}`;
760
+ columnType: "PgText";
761
+ data: RegistryId;
682
762
  driverParam: string;
683
763
  notNull: true;
684
764
  hasDefault: false;
685
765
  isPrimaryKey: false;
686
766
  isAutoincrement: false;
687
767
  hasRuntimeDefault: false;
688
- enumValues: undefined;
768
+ enumValues: [string, ...string[]];
689
769
  baseColumn: never;
690
770
  identity: undefined;
691
771
  generated: undefined;
692
772
  }, {}, {
693
- $type: `0x${string}`;
773
+ $type: RegistryId;
694
774
  }>;
695
- rootRegistryOwnerId: ponder.PgColumn<{
696
- name: "rootRegistryOwnerId";
697
- tableName: "v1_domains";
775
+ subregistryId: ponder.PgColumn<{
776
+ name: "subregistryId";
777
+ tableName: "domains";
698
778
  dataType: "string";
699
- columnType: "PgHex";
700
- data: `0x${string}`;
779
+ columnType: "PgText";
780
+ data: RegistryId;
701
781
  driverParam: string;
702
782
  notNull: false;
703
783
  hasDefault: false;
704
784
  isPrimaryKey: false;
705
785
  isAutoincrement: false;
706
786
  hasRuntimeDefault: false;
707
- enumValues: undefined;
708
- baseColumn: never;
709
- identity: undefined;
710
- generated: undefined;
711
- }, {}, {
712
- $type: `0x${string}`;
713
- }>;
714
- };
715
- extra: {
716
- byParent: drizzle_orm_pg_core.IndexBuilder;
717
- byOwner: drizzle_orm_pg_core.IndexBuilder;
718
- byLabelHash: drizzle_orm_pg_core.IndexBuilder;
719
- };
720
- dialect: "pg";
721
- }>;
722
- declare const relations_v1Domain: drizzle_orm.Relations<"v1_domains", {
723
- parent: drizzle_orm.One<"v1_domains", true>;
724
- children: drizzle_orm.Many<"v1_domains">;
725
- rootRegistryOwner: drizzle_orm.One<"accounts", false>;
726
- owner: drizzle_orm.One<"accounts", false>;
727
- label: drizzle_orm.One<"labels", true>;
728
- registrations: drizzle_orm.Many<"registrations">;
729
- }>;
730
- declare const v2Domain: ponder.OnchainTable<{
731
- name: "v2_domains";
732
- schema: undefined;
733
- columns: {
734
- id: ponder.PgColumn<{
735
- name: "id";
736
- tableName: "v2_domains";
737
- dataType: "string";
738
- columnType: "PgText";
739
- data: ENSv2DomainId;
740
- driverParam: string;
741
- notNull: true;
742
- hasDefault: false;
743
- isPrimaryKey: true;
744
- isAutoincrement: false;
745
- hasRuntimeDefault: false;
746
787
  enumValues: [string, ...string[]];
747
788
  baseColumn: never;
748
789
  identity: undefined;
749
790
  generated: undefined;
750
791
  }, {}, {
751
- $type: ENSv2DomainId;
792
+ $type: RegistryId;
752
793
  }>;
753
794
  tokenId: ponder.PgColumn<{
754
795
  name: "tokenId";
755
- tableName: "v2_domains";
796
+ tableName: "domains";
756
797
  dataType: "bigint";
757
798
  columnType: "PgEvmBigint";
758
799
  data: bigint;
759
800
  driverParam: string;
760
- notNull: true;
801
+ notNull: false;
761
802
  hasDefault: false;
762
803
  isPrimaryKey: false;
763
804
  isAutoincrement: false;
@@ -766,48 +807,50 @@ declare const v2Domain: ponder.OnchainTable<{
766
807
  baseColumn: never;
767
808
  identity: undefined;
768
809
  generated: undefined;
769
- }, {}, {}>;
770
- registryId: ponder.PgColumn<{
771
- name: "registryId";
772
- tableName: "v2_domains";
810
+ }, {}, {
811
+ $type: bigint;
812
+ }>;
813
+ node: ponder.PgColumn<{
814
+ name: "node";
815
+ tableName: "domains";
773
816
  dataType: "string";
774
- columnType: "PgText";
775
- data: RegistryId;
817
+ columnType: "PgHex";
818
+ data: `0x${string}`;
776
819
  driverParam: string;
777
- notNull: true;
820
+ notNull: false;
778
821
  hasDefault: false;
779
822
  isPrimaryKey: false;
780
823
  isAutoincrement: false;
781
824
  hasRuntimeDefault: false;
782
- enumValues: [string, ...string[]];
825
+ enumValues: undefined;
783
826
  baseColumn: never;
784
827
  identity: undefined;
785
828
  generated: undefined;
786
829
  }, {}, {
787
- $type: RegistryId;
830
+ $type: `0x${string}`;
788
831
  }>;
789
- subregistryId: ponder.PgColumn<{
790
- name: "subregistryId";
791
- tableName: "v2_domains";
832
+ labelHash: ponder.PgColumn<{
833
+ name: "labelHash";
834
+ tableName: "domains";
792
835
  dataType: "string";
793
- columnType: "PgText";
794
- data: RegistryId;
836
+ columnType: "PgHex";
837
+ data: `0x${string}`;
795
838
  driverParam: string;
796
- notNull: false;
839
+ notNull: true;
797
840
  hasDefault: false;
798
841
  isPrimaryKey: false;
799
842
  isAutoincrement: false;
800
843
  hasRuntimeDefault: false;
801
- enumValues: [string, ...string[]];
844
+ enumValues: undefined;
802
845
  baseColumn: never;
803
846
  identity: undefined;
804
847
  generated: undefined;
805
848
  }, {}, {
806
- $type: RegistryId;
849
+ $type: `0x${string}`;
807
850
  }>;
808
851
  ownerId: ponder.PgColumn<{
809
852
  name: "ownerId";
810
- tableName: "v2_domains";
853
+ tableName: "domains";
811
854
  dataType: "string";
812
855
  columnType: "PgHex";
813
856
  data: `0x${string}`;
@@ -824,14 +867,14 @@ declare const v2Domain: ponder.OnchainTable<{
824
867
  }, {}, {
825
868
  $type: `0x${string}`;
826
869
  }>;
827
- labelHash: ponder.PgColumn<{
828
- name: "labelHash";
829
- tableName: "v2_domains";
870
+ rootRegistryOwnerId: ponder.PgColumn<{
871
+ name: "rootRegistryOwnerId";
872
+ tableName: "domains";
830
873
  dataType: "string";
831
874
  columnType: "PgHex";
832
875
  data: `0x${string}`;
833
876
  driverParam: string;
834
- notNull: true;
877
+ notNull: false;
835
878
  hasDefault: false;
836
879
  isPrimaryKey: false;
837
880
  isAutoincrement: false;
@@ -845,6 +888,7 @@ declare const v2Domain: ponder.OnchainTable<{
845
888
  }>;
846
889
  };
847
890
  extra: {
891
+ byType: drizzle_orm_pg_core.IndexBuilder;
848
892
  byRegistry: drizzle_orm_pg_core.IndexBuilder;
849
893
  bySubregistry: drizzle_orm_pg_core.IndexBuilder;
850
894
  byOwner: drizzle_orm_pg_core.IndexBuilder;
@@ -852,10 +896,11 @@ declare const v2Domain: ponder.OnchainTable<{
852
896
  };
853
897
  dialect: "pg";
854
898
  }>;
855
- declare const relations_v2Domain: drizzle_orm.Relations<"v2_domains", {
899
+ declare const relations_domain: drizzle_orm.Relations<"domains", {
856
900
  registry: drizzle_orm.One<"registries", true>;
857
901
  subregistry: drizzle_orm.One<"registries", false>;
858
902
  owner: drizzle_orm.One<"accounts", false>;
903
+ rootRegistryOwner: drizzle_orm.One<"accounts", false>;
859
904
  label: drizzle_orm.One<"labels", true>;
860
905
  registrations: drizzle_orm.Many<"registrations">;
861
906
  }>;
@@ -991,7 +1036,7 @@ declare const registration: ponder.OnchainTable<{
991
1036
  name: "registrarChainId";
992
1037
  tableName: "registrations";
993
1038
  dataType: "number";
994
- columnType: "PgInteger";
1039
+ columnType: "PgBigInt53";
995
1040
  data: number;
996
1041
  driverParam: string | number;
997
1042
  notNull: true;
@@ -1173,6 +1218,15 @@ declare const registration: ponder.OnchainTable<{
1173
1218
  };
1174
1219
  dialect: "pg";
1175
1220
  }>;
1221
+ declare const registration_relations: drizzle_orm.Relations<"registrations", {
1222
+ domain: drizzle_orm.One<"domains", true>;
1223
+ registrant: drizzle_orm.One<"accounts", false>;
1224
+ latestRegistrationIndex: drizzle_orm.One<"latest_registration_indexes", false>;
1225
+ latestRenewalIndex: drizzle_orm.One<"latest_renewal_indexes", false>;
1226
+ unregistrant: drizzle_orm.One<"accounts", false>;
1227
+ renewals: drizzle_orm.Many<"renewals">;
1228
+ event: drizzle_orm.One<"events", true>;
1229
+ }>;
1176
1230
  declare const latestRegistrationIndex: ponder.OnchainTable<{
1177
1231
  name: "latest_registration_indexes";
1178
1232
  schema: undefined;
@@ -1217,13 +1271,8 @@ declare const latestRegistrationIndex: ponder.OnchainTable<{
1217
1271
  extra: undefined;
1218
1272
  dialect: "pg";
1219
1273
  }>;
1220
- declare const registration_relations: drizzle_orm.Relations<"registrations", {
1221
- v1Domain: drizzle_orm.One<"v1_domains", true>;
1222
- v2Domain: drizzle_orm.One<"v2_domains", true>;
1223
- registrant: drizzle_orm.One<"accounts", false>;
1224
- unregistrant: drizzle_orm.One<"accounts", false>;
1225
- renewals: drizzle_orm.Many<"renewals">;
1226
- event: drizzle_orm.One<"events", true>;
1274
+ declare const latestRegistrationIndex_relations: drizzle_orm.Relations<"latest_registration_indexes", {
1275
+ domain: drizzle_orm.One<"domains", true>;
1227
1276
  }>;
1228
1277
  declare const renewal: ponder.OnchainTable<{
1229
1278
  name: "renewals";
@@ -1461,6 +1510,9 @@ declare const latestRenewalIndex: ponder.OnchainTable<{
1461
1510
  };
1462
1511
  dialect: "pg";
1463
1512
  }>;
1513
+ declare const latestRenewalIndex_relations: drizzle_orm.Relations<"latest_renewal_indexes", {
1514
+ domain: drizzle_orm.One<"domains", true>;
1515
+ }>;
1464
1516
  declare const permissions: ponder.OnchainTable<{
1465
1517
  name: "permissions";
1466
1518
  schema: undefined;
@@ -1488,7 +1540,7 @@ declare const permissions: ponder.OnchainTable<{
1488
1540
  name: "chainId";
1489
1541
  tableName: "permissions";
1490
1542
  dataType: "number";
1491
- columnType: "PgInteger";
1543
+ columnType: "PgBigInt53";
1492
1544
  data: number;
1493
1545
  driverParam: string | number;
1494
1546
  notNull: true;
@@ -1559,7 +1611,7 @@ declare const permissionsResource: ponder.OnchainTable<{
1559
1611
  name: "chainId";
1560
1612
  tableName: "permissions_resources";
1561
1613
  dataType: "number";
1562
- columnType: "PgInteger";
1614
+ columnType: "PgBigInt53";
1563
1615
  data: number;
1564
1616
  driverParam: string | number;
1565
1617
  notNull: true;
@@ -1646,7 +1698,7 @@ declare const permissionsUser: ponder.OnchainTable<{
1646
1698
  name: "chainId";
1647
1699
  tableName: "permissions_users";
1648
1700
  dataType: "number";
1649
- columnType: "PgInteger";
1701
+ columnType: "PgBigInt53";
1650
1702
  data: number;
1651
1703
  driverParam: string | number;
1652
1704
  notNull: true;
@@ -1793,7 +1845,7 @@ declare const label: ponder.OnchainTable<{
1793
1845
  dialect: "pg";
1794
1846
  }>;
1795
1847
  declare const label_relations: drizzle_orm.Relations<"labels", {
1796
- domains: drizzle_orm.Many<"v2_domains">;
1848
+ domains: drizzle_orm.Many<"domains">;
1797
1849
  }>;
1798
1850
  declare const registryCanonicalDomain: ponder.OnchainTable<{
1799
1851
  name: "registry_canonical_domains";
@@ -1823,7 +1875,7 @@ declare const registryCanonicalDomain: ponder.OnchainTable<{
1823
1875
  tableName: "registry_canonical_domains";
1824
1876
  dataType: "string";
1825
1877
  columnType: "PgText";
1826
- data: ENSv2DomainId;
1878
+ data: DomainId;
1827
1879
  driverParam: string;
1828
1880
  notNull: true;
1829
1881
  hasDefault: false;
@@ -1835,7 +1887,123 @@ declare const registryCanonicalDomain: ponder.OnchainTable<{
1835
1887
  identity: undefined;
1836
1888
  generated: undefined;
1837
1889
  }, {}, {
1838
- $type: ENSv2DomainId;
1890
+ $type: DomainId;
1891
+ }>;
1892
+ };
1893
+ extra: undefined;
1894
+ dialect: "pg";
1895
+ }>;
1896
+
1897
+ /**
1898
+ * Schema Definitions that track ENS Registry migration status for Protocol Acceleration.
1899
+ */
1900
+ /**
1901
+ * Tracks the migration status of a node.
1902
+ *
1903
+ * Due to a security issue, ENS migrated from the RegistryOld contract to a new Registry
1904
+ * contract. When indexing events, the indexer must ignore any events on the RegistryOld for domains
1905
+ * that have since been migrated to the new Registry.
1906
+ *
1907
+ * To store the necessary information required to implement this behavior, we track the set of nodes
1908
+ * that have been registered in the (new) Registry contract on the ENS Root Chain. When an event is
1909
+ * encountered on the RegistryOld contract, if the relevant node exists in this set, the event should
1910
+ * be ignored, as the node is considered migrated.
1911
+ *
1912
+ * Note that this logic is only necessary for the ENS Root Chain, the only chain that includes the
1913
+ * Registry migration: we do not track nodes in the Basenames and Lineanames deployments of the
1914
+ * Registry on their respective chains, for example.
1915
+ *
1916
+ * Note also that this Registry migration tracking is isolated to the Protocol Acceleration schema/plugin.
1917
+ * That is, the subgraph plugin implements its own Registry migration logic. By isolating this logic
1918
+ * to the Protocol Acceleration plugin, we allow the Protocol Acceleration plugin to be run
1919
+ * independently of other plugins.
1920
+ *
1921
+ * Note also that we key this record by (parentNode, labelHash) to stay on Ponder's prefetch hot-path,
1922
+ * which requires that the key of the entity be trivially derived from event arguments. Because this
1923
+ * record is consulted in the context of the ENSv1RegistryOld#NewOwner event (which emits both
1924
+ * `parentNode` and `labelHash` directly), keying by (parentNode, labelHash) lets Ponder's profile
1925
+ * pattern matcher recover the key from event args. See the helper module's block comment for the
1926
+ * full rationale.
1927
+ *
1928
+ * The ensv2 plugin depends on the Protocol Acceleration plugin in order to piggyback on this
1929
+ * Registry migration logic.
1930
+ */
1931
+ declare const migratedNodeByParent: ponder.OnchainTable<{
1932
+ name: "migrated_nodes_by_parent";
1933
+ schema: undefined;
1934
+ columns: {
1935
+ parentNode: ponder.PgColumn<{
1936
+ name: "parentNode";
1937
+ tableName: "migrated_nodes_by_parent";
1938
+ dataType: "string";
1939
+ columnType: "PgHex";
1940
+ data: `0x${string}`;
1941
+ driverParam: string;
1942
+ notNull: true;
1943
+ hasDefault: false;
1944
+ isPrimaryKey: false;
1945
+ isAutoincrement: false;
1946
+ hasRuntimeDefault: false;
1947
+ enumValues: undefined;
1948
+ baseColumn: never;
1949
+ identity: undefined;
1950
+ generated: undefined;
1951
+ }, {}, {
1952
+ $type: `0x${string}`;
1953
+ }>;
1954
+ labelHash: ponder.PgColumn<{
1955
+ name: "labelHash";
1956
+ tableName: "migrated_nodes_by_parent";
1957
+ dataType: "string";
1958
+ columnType: "PgHex";
1959
+ data: `0x${string}`;
1960
+ driverParam: string;
1961
+ notNull: true;
1962
+ hasDefault: false;
1963
+ isPrimaryKey: false;
1964
+ isAutoincrement: false;
1965
+ hasRuntimeDefault: false;
1966
+ enumValues: undefined;
1967
+ baseColumn: never;
1968
+ identity: undefined;
1969
+ generated: undefined;
1970
+ }, {}, {
1971
+ $type: `0x${string}`;
1972
+ }>;
1973
+ };
1974
+ extra: {
1975
+ pk: ponder.PrimaryKeyBuilder<"labelHash" | "parentNode">;
1976
+ };
1977
+ dialect: "pg";
1978
+ }>;
1979
+ /**
1980
+ * Sibling lookup-by-namehash table for {@link migratedNodeByParent}. Indexed by `node` so that
1981
+ * ENSv1RegistryOld#Transfer/NewTTL/NewResolver — which emit only `node` — can read migration
1982
+ * status on Ponder's prefetch hot-path. Existence in this table is equivalent to existence in
1983
+ * {@link migratedNodeByParent}; both are written together by the migration helper.
1984
+ */
1985
+ declare const migratedNodeByNode: ponder.OnchainTable<{
1986
+ name: "migrated_nodes_by_node";
1987
+ schema: undefined;
1988
+ columns: {
1989
+ node: ponder.PgColumn<{
1990
+ name: "node";
1991
+ tableName: "migrated_nodes_by_node";
1992
+ dataType: "string";
1993
+ columnType: "PgHex";
1994
+ data: `0x${string}`;
1995
+ driverParam: string;
1996
+ notNull: true;
1997
+ hasDefault: false;
1998
+ isPrimaryKey: true;
1999
+ isAutoincrement: false;
2000
+ hasRuntimeDefault: false;
2001
+ enumValues: undefined;
2002
+ baseColumn: never;
2003
+ identity: undefined;
2004
+ generated: undefined;
2005
+ }, {}, {
2006
+ $type: `0x${string}`;
1839
2007
  }>;
1840
2008
  };
1841
2009
  extra: undefined;
@@ -1936,7 +2104,7 @@ declare const domainResolverRelation: ponder.OnchainTable<{
1936
2104
  name: "chainId";
1937
2105
  tableName: "domain_resolver_relations";
1938
2106
  dataType: "number";
1939
- columnType: "PgInteger";
2107
+ columnType: "PgBigInt53";
1940
2108
  data: number;
1941
2109
  driverParam: string | number;
1942
2110
  notNull: true;
@@ -1974,7 +2142,7 @@ declare const domainResolverRelation: ponder.OnchainTable<{
1974
2142
  name: "domainId";
1975
2143
  tableName: "domain_resolver_relations";
1976
2144
  dataType: "string";
1977
- columnType: "PgHex";
2145
+ columnType: "PgText";
1978
2146
  data: DomainId;
1979
2147
  driverParam: string;
1980
2148
  notNull: true;
@@ -1982,7 +2150,7 @@ declare const domainResolverRelation: ponder.OnchainTable<{
1982
2150
  isPrimaryKey: false;
1983
2151
  isAutoincrement: false;
1984
2152
  hasRuntimeDefault: false;
1985
- enumValues: undefined;
2153
+ enumValues: [string, ...string[]];
1986
2154
  baseColumn: never;
1987
2155
  identity: undefined;
1988
2156
  generated: undefined;
@@ -2049,7 +2217,7 @@ declare const resolver: ponder.OnchainTable<{
2049
2217
  name: "chainId";
2050
2218
  tableName: "resolvers";
2051
2219
  dataType: "number";
2052
- columnType: "PgInteger";
2220
+ columnType: "PgBigInt53";
2053
2221
  data: number;
2054
2222
  driverParam: string | number;
2055
2223
  notNull: true;
@@ -2133,7 +2301,7 @@ declare const resolverRecords: ponder.OnchainTable<{
2133
2301
  name: "chainId";
2134
2302
  tableName: "resolver_records";
2135
2303
  dataType: "number";
2136
- columnType: "PgInteger";
2304
+ columnType: "PgBigInt53";
2137
2305
  data: number;
2138
2306
  driverParam: string | number;
2139
2307
  notNull: true;
@@ -2318,7 +2486,7 @@ declare const resolverAddressRecord: ponder.OnchainTable<{
2318
2486
  name: "chainId";
2319
2487
  tableName: "resolver_address_records";
2320
2488
  dataType: "number";
2321
- columnType: "PgInteger";
2489
+ columnType: "PgBigInt53";
2322
2490
  data: number;
2323
2491
  driverParam: string | number;
2324
2492
  notNull: true;
@@ -2429,7 +2597,7 @@ declare const resolverTextRecord: ponder.OnchainTable<{
2429
2597
  name: "chainId";
2430
2598
  tableName: "resolver_text_records";
2431
2599
  dataType: "number";
2432
- columnType: "PgInteger";
2600
+ columnType: "PgBigInt53";
2433
2601
  data: number;
2434
2602
  driverParam: string | number;
2435
2603
  notNull: true;
@@ -2525,57 +2693,6 @@ declare const resolverTextRecord: ponder.OnchainTable<{
2525
2693
  declare const resolverTextRecordRelations: drizzle_orm.Relations<"resolver_text_records", {
2526
2694
  resolver: drizzle_orm.One<"resolver_records", true>;
2527
2695
  }>;
2528
- /**
2529
- * Tracks the migration status of a node.
2530
- *
2531
- * Due to a security issue, ENS migrated from the RegistryOld contract to a new Registry
2532
- * contract. When indexing events, the indexer must ignore any events on the RegistryOld for domains
2533
- * that have since been migrated to the new Registry.
2534
- *
2535
- * To store the necessary information required to implement this behavior, we track the set of nodes
2536
- * that have been registered in the (new) Registry contract on the ENS Root Chain. When an event is
2537
- * encountered on the RegistryOld contract, if the relevant node exists in this set, the event should
2538
- * be ignored, as the node is considered migrated.
2539
- *
2540
- * Note that this logic is only necessary for the ENS Root Chain, the only chain that includes the
2541
- * Registry migration: we do not track nodes in the the Basenames and Lineanames deployments of the
2542
- * Registry on their respective chains, for example.
2543
- *
2544
- * Note also that this Registry migration tracking is isolated to the Protocol Acceleration schema/plugin.
2545
- * That is, the subgraph plugin implements its own Registry migration logic. By isolating this logic
2546
- * to the Protocol Acceleration plugin, we allow the Protocol Acceleration plugin to be run
2547
- * independently of other plugins.
2548
- *
2549
- * The ensv2 plugin depends on the Protocol Acceleration plugin in order to piggyback on this
2550
- * Registry migration logic.
2551
- */
2552
- declare const migratedNode: ponder.OnchainTable<{
2553
- name: "migrated_nodes";
2554
- schema: undefined;
2555
- columns: {
2556
- node: ponder.PgColumn<{
2557
- name: "node";
2558
- tableName: "migrated_nodes";
2559
- dataType: "string";
2560
- columnType: "PgHex";
2561
- data: `0x${string}`;
2562
- driverParam: string;
2563
- notNull: true;
2564
- hasDefault: false;
2565
- isPrimaryKey: true;
2566
- isAutoincrement: false;
2567
- hasRuntimeDefault: false;
2568
- enumValues: undefined;
2569
- baseColumn: never;
2570
- identity: undefined;
2571
- generated: undefined;
2572
- }, {}, {
2573
- $type: `0x${string}`;
2574
- }>;
2575
- };
2576
- extra: undefined;
2577
- dialect: "pg";
2578
- }>;
2579
2696
 
2580
2697
  /**
2581
2698
  * Schema Definitions for tracking of ENS registrars.
@@ -6723,7 +6840,7 @@ declare const nameSales: ponder.OnchainTable<{
6723
6840
  name: "chainId";
6724
6841
  tableName: "name_sales";
6725
6842
  dataType: "number";
6726
- columnType: "PgInteger";
6843
+ columnType: "PgBigInt53";
6727
6844
  data: number;
6728
6845
  driverParam: string | number;
6729
6846
  notNull: true;
@@ -7026,7 +7143,7 @@ declare const nameTokens: ponder.OnchainTable<{
7026
7143
  name: "chainId";
7027
7144
  tableName: "name_tokens";
7028
7145
  dataType: "number";
7029
- columnType: "PgInteger";
7146
+ columnType: "PgBigInt53";
7030
7147
  data: number;
7031
7148
  driverParam: string | number;
7032
7149
  notNull: true;
@@ -7140,23 +7257,29 @@ declare const nameTokens: ponder.OnchainTable<{
7140
7257
 
7141
7258
  declare const abstractEnsIndexerSchema_account: typeof account;
7142
7259
  declare const abstractEnsIndexerSchema_account_relations: typeof account_relations;
7260
+ declare const abstractEnsIndexerSchema_domain: typeof domain;
7143
7261
  declare const abstractEnsIndexerSchema_domainEvent: typeof domainEvent;
7144
7262
  declare const abstractEnsIndexerSchema_domainResolverRelation: typeof domainResolverRelation;
7145
7263
  declare const abstractEnsIndexerSchema_domainResolverRelation_relations: typeof domainResolverRelation_relations;
7264
+ declare const abstractEnsIndexerSchema_domainType: typeof domainType;
7146
7265
  declare const abstractEnsIndexerSchema_event: typeof event;
7147
7266
  declare const abstractEnsIndexerSchema_internal_registrarActionMetadata: typeof internal_registrarActionMetadata;
7148
7267
  declare const abstractEnsIndexerSchema_internal_registrarActionMetadataType: typeof internal_registrarActionMetadataType;
7149
7268
  declare const abstractEnsIndexerSchema_label: typeof label;
7150
7269
  declare const abstractEnsIndexerSchema_label_relations: typeof label_relations;
7151
7270
  declare const abstractEnsIndexerSchema_latestRegistrationIndex: typeof latestRegistrationIndex;
7271
+ declare const abstractEnsIndexerSchema_latestRegistrationIndex_relations: typeof latestRegistrationIndex_relations;
7152
7272
  declare const abstractEnsIndexerSchema_latestRenewalIndex: typeof latestRenewalIndex;
7153
- declare const abstractEnsIndexerSchema_migratedNode: typeof migratedNode;
7273
+ declare const abstractEnsIndexerSchema_latestRenewalIndex_relations: typeof latestRenewalIndex_relations;
7274
+ declare const abstractEnsIndexerSchema_migratedNodeByNode: typeof migratedNodeByNode;
7275
+ declare const abstractEnsIndexerSchema_migratedNodeByParent: typeof migratedNodeByParent;
7154
7276
  declare const abstractEnsIndexerSchema_nameSales: typeof nameSales;
7155
7277
  declare const abstractEnsIndexerSchema_nameTokens: typeof nameTokens;
7156
7278
  declare const abstractEnsIndexerSchema_permissions: typeof permissions;
7157
7279
  declare const abstractEnsIndexerSchema_permissionsEvent: typeof permissionsEvent;
7158
7280
  declare const abstractEnsIndexerSchema_permissionsResource: typeof permissionsResource;
7159
7281
  declare const abstractEnsIndexerSchema_permissionsUser: typeof permissionsUser;
7282
+ declare const abstractEnsIndexerSchema_permissionsUserEvent: typeof permissionsUserEvent;
7160
7283
  declare const abstractEnsIndexerSchema_registrarActionRelations: typeof registrarActionRelations;
7161
7284
  declare const abstractEnsIndexerSchema_registrarActionType: typeof registrarActionType;
7162
7285
  declare const abstractEnsIndexerSchema_registrarActions: typeof registrarActions;
@@ -7167,12 +7290,12 @@ declare const abstractEnsIndexerSchema_registrationType: typeof registrationType
7167
7290
  declare const abstractEnsIndexerSchema_registration_relations: typeof registration_relations;
7168
7291
  declare const abstractEnsIndexerSchema_registry: typeof registry;
7169
7292
  declare const abstractEnsIndexerSchema_registryCanonicalDomain: typeof registryCanonicalDomain;
7293
+ declare const abstractEnsIndexerSchema_registryType: typeof registryType;
7294
+ declare const abstractEnsIndexerSchema_relations_domain: typeof relations_domain;
7170
7295
  declare const abstractEnsIndexerSchema_relations_permissions: typeof relations_permissions;
7171
7296
  declare const abstractEnsIndexerSchema_relations_permissionsResource: typeof relations_permissionsResource;
7172
7297
  declare const abstractEnsIndexerSchema_relations_permissionsUser: typeof relations_permissionsUser;
7173
7298
  declare const abstractEnsIndexerSchema_relations_registry: typeof relations_registry;
7174
- declare const abstractEnsIndexerSchema_relations_v1Domain: typeof relations_v1Domain;
7175
- declare const abstractEnsIndexerSchema_relations_v2Domain: typeof relations_v2Domain;
7176
7299
  declare const abstractEnsIndexerSchema_renewal: typeof renewal;
7177
7300
  declare const abstractEnsIndexerSchema_renewal_relations: typeof renewal_relations;
7178
7301
  declare const abstractEnsIndexerSchema_resolver: typeof resolver;
@@ -7241,10 +7364,8 @@ declare const abstractEnsIndexerSchema_subgraph_wrappedTransfer: typeof subgraph
7241
7364
  declare const abstractEnsIndexerSchema_subgraph_wrappedTransferRelations: typeof subgraph_wrappedTransferRelations;
7242
7365
  declare const abstractEnsIndexerSchema_subregistries: typeof subregistries;
7243
7366
  declare const abstractEnsIndexerSchema_subregistryRelations: typeof subregistryRelations;
7244
- declare const abstractEnsIndexerSchema_v1Domain: typeof v1Domain;
7245
- declare const abstractEnsIndexerSchema_v2Domain: typeof v2Domain;
7246
7367
  declare namespace abstractEnsIndexerSchema {
7247
- export { abstractEnsIndexerSchema_account as account, abstractEnsIndexerSchema_account_relations as account_relations, abstractEnsIndexerSchema_domainEvent as domainEvent, abstractEnsIndexerSchema_domainResolverRelation as domainResolverRelation, abstractEnsIndexerSchema_domainResolverRelation_relations as domainResolverRelation_relations, abstractEnsIndexerSchema_event as event, abstractEnsIndexerSchema_internal_registrarActionMetadata as internal_registrarActionMetadata, abstractEnsIndexerSchema_internal_registrarActionMetadataType as internal_registrarActionMetadataType, abstractEnsIndexerSchema_label as label, abstractEnsIndexerSchema_label_relations as label_relations, abstractEnsIndexerSchema_latestRegistrationIndex as latestRegistrationIndex, abstractEnsIndexerSchema_latestRenewalIndex as latestRenewalIndex, abstractEnsIndexerSchema_migratedNode as migratedNode, abstractEnsIndexerSchema_nameSales as nameSales, abstractEnsIndexerSchema_nameTokens as nameTokens, abstractEnsIndexerSchema_permissions as permissions, abstractEnsIndexerSchema_permissionsEvent as permissionsEvent, abstractEnsIndexerSchema_permissionsResource as permissionsResource, abstractEnsIndexerSchema_permissionsUser as permissionsUser, abstractEnsIndexerSchema_registrarActionRelations as registrarActionRelations, abstractEnsIndexerSchema_registrarActionType as registrarActionType, abstractEnsIndexerSchema_registrarActions as registrarActions, abstractEnsIndexerSchema_registration as registration, abstractEnsIndexerSchema_registrationLifecycleRelations as registrationLifecycleRelations, abstractEnsIndexerSchema_registrationLifecycles as registrationLifecycles, abstractEnsIndexerSchema_registrationType as registrationType, abstractEnsIndexerSchema_registration_relations as registration_relations, abstractEnsIndexerSchema_registry as registry, abstractEnsIndexerSchema_registryCanonicalDomain as registryCanonicalDomain, abstractEnsIndexerSchema_relations_permissions as relations_permissions, abstractEnsIndexerSchema_relations_permissionsResource as relations_permissionsResource, abstractEnsIndexerSchema_relations_permissionsUser as relations_permissionsUser, abstractEnsIndexerSchema_relations_registry as relations_registry, abstractEnsIndexerSchema_relations_v1Domain as relations_v1Domain, abstractEnsIndexerSchema_relations_v2Domain as relations_v2Domain, abstractEnsIndexerSchema_renewal as renewal, abstractEnsIndexerSchema_renewal_relations as renewal_relations, abstractEnsIndexerSchema_resolver as resolver, abstractEnsIndexerSchema_resolverAddressRecord as resolverAddressRecord, abstractEnsIndexerSchema_resolverAddressRecordRelations as resolverAddressRecordRelations, abstractEnsIndexerSchema_resolverEvent as resolverEvent, abstractEnsIndexerSchema_resolverRecords as resolverRecords, abstractEnsIndexerSchema_resolverRecords_relations as resolverRecords_relations, abstractEnsIndexerSchema_resolverTextRecord as resolverTextRecord, abstractEnsIndexerSchema_resolverTextRecordRelations as resolverTextRecordRelations, abstractEnsIndexerSchema_resolver_relations as resolver_relations, abstractEnsIndexerSchema_reverseNameRecord as reverseNameRecord, abstractEnsIndexerSchema_subgraph_abiChanged as subgraph_abiChanged, abstractEnsIndexerSchema_subgraph_abiChangedRelations as subgraph_abiChangedRelations, abstractEnsIndexerSchema_subgraph_account as subgraph_account, abstractEnsIndexerSchema_subgraph_accountRelations as subgraph_accountRelations, abstractEnsIndexerSchema_subgraph_addrChanged as subgraph_addrChanged, abstractEnsIndexerSchema_subgraph_addrChangedRelations as subgraph_addrChangedRelations, abstractEnsIndexerSchema_subgraph_authorisationChanged as subgraph_authorisationChanged, abstractEnsIndexerSchema_subgraph_authorisationChangedRelations as subgraph_authorisationChangedRelations, abstractEnsIndexerSchema_subgraph_contenthashChanged as subgraph_contenthashChanged, abstractEnsIndexerSchema_subgraph_contenthashChangedRelations as subgraph_contenthashChangedRelations, abstractEnsIndexerSchema_subgraph_domain as subgraph_domain, abstractEnsIndexerSchema_subgraph_domainRelations as subgraph_domainRelations, abstractEnsIndexerSchema_subgraph_expiryExtended as subgraph_expiryExtended, abstractEnsIndexerSchema_subgraph_expiryExtendedRelations as subgraph_expiryExtendedRelations, abstractEnsIndexerSchema_subgraph_fusesSet as subgraph_fusesSet, abstractEnsIndexerSchema_subgraph_fusesSetRelations as subgraph_fusesSetRelations, abstractEnsIndexerSchema_subgraph_interfaceChanged as subgraph_interfaceChanged, abstractEnsIndexerSchema_subgraph_interfaceChangedRelations as subgraph_interfaceChangedRelations, abstractEnsIndexerSchema_subgraph_multicoinAddrChanged as subgraph_multicoinAddrChanged, abstractEnsIndexerSchema_subgraph_multicoinAddrChangedRelations as subgraph_multicoinAddrChangedRelations, abstractEnsIndexerSchema_subgraph_nameChanged as subgraph_nameChanged, abstractEnsIndexerSchema_subgraph_nameChangedRelations as subgraph_nameChangedRelations, abstractEnsIndexerSchema_subgraph_nameRegistered as subgraph_nameRegistered, abstractEnsIndexerSchema_subgraph_nameRegisteredRelations as subgraph_nameRegisteredRelations, abstractEnsIndexerSchema_subgraph_nameRenewed as subgraph_nameRenewed, abstractEnsIndexerSchema_subgraph_nameRenewedRelations as subgraph_nameRenewedRelations, abstractEnsIndexerSchema_subgraph_nameTransferred as subgraph_nameTransferred, abstractEnsIndexerSchema_subgraph_nameTransferredRelations as subgraph_nameTransferredRelations, abstractEnsIndexerSchema_subgraph_nameUnwrapped as subgraph_nameUnwrapped, abstractEnsIndexerSchema_subgraph_nameUnwrappedRelations as subgraph_nameUnwrappedRelations, abstractEnsIndexerSchema_subgraph_nameWrapped as subgraph_nameWrapped, abstractEnsIndexerSchema_subgraph_nameWrappedRelations as subgraph_nameWrappedRelations, abstractEnsIndexerSchema_subgraph_newOwner as subgraph_newOwner, abstractEnsIndexerSchema_subgraph_newOwnerRelations as subgraph_newOwnerRelations, abstractEnsIndexerSchema_subgraph_newResolver as subgraph_newResolver, abstractEnsIndexerSchema_subgraph_newResolverRelations as subgraph_newResolverRelations, abstractEnsIndexerSchema_subgraph_newTTL as subgraph_newTTL, abstractEnsIndexerSchema_subgraph_newTTLRelations as subgraph_newTTLRelations, abstractEnsIndexerSchema_subgraph_pubkeyChanged as subgraph_pubkeyChanged, abstractEnsIndexerSchema_subgraph_pubkeyChangedRelations as subgraph_pubkeyChangedRelations, abstractEnsIndexerSchema_subgraph_registration as subgraph_registration, abstractEnsIndexerSchema_subgraph_registrationRelations as subgraph_registrationRelations, abstractEnsIndexerSchema_subgraph_resolver as subgraph_resolver, abstractEnsIndexerSchema_subgraph_resolverRelations as subgraph_resolverRelations, abstractEnsIndexerSchema_subgraph_textChanged as subgraph_textChanged, abstractEnsIndexerSchema_subgraph_textChangedRelations as subgraph_textChangedRelations, abstractEnsIndexerSchema_subgraph_transfer as subgraph_transfer, abstractEnsIndexerSchema_subgraph_transferRelations as subgraph_transferRelations, abstractEnsIndexerSchema_subgraph_versionChanged as subgraph_versionChanged, abstractEnsIndexerSchema_subgraph_versionChangedRelations as subgraph_versionChangedRelations, abstractEnsIndexerSchema_subgraph_wrappedDomain as subgraph_wrappedDomain, abstractEnsIndexerSchema_subgraph_wrappedDomainRelations as subgraph_wrappedDomainRelations, abstractEnsIndexerSchema_subgraph_wrappedTransfer as subgraph_wrappedTransfer, abstractEnsIndexerSchema_subgraph_wrappedTransferRelations as subgraph_wrappedTransferRelations, abstractEnsIndexerSchema_subregistries as subregistries, abstractEnsIndexerSchema_subregistryRelations as subregistryRelations, abstractEnsIndexerSchema_v1Domain as v1Domain, abstractEnsIndexerSchema_v2Domain as v2Domain };
7368
+ export { abstractEnsIndexerSchema_account as account, abstractEnsIndexerSchema_account_relations as account_relations, abstractEnsIndexerSchema_domain as domain, abstractEnsIndexerSchema_domainEvent as domainEvent, abstractEnsIndexerSchema_domainResolverRelation as domainResolverRelation, abstractEnsIndexerSchema_domainResolverRelation_relations as domainResolverRelation_relations, abstractEnsIndexerSchema_domainType as domainType, abstractEnsIndexerSchema_event as event, abstractEnsIndexerSchema_internal_registrarActionMetadata as internal_registrarActionMetadata, abstractEnsIndexerSchema_internal_registrarActionMetadataType as internal_registrarActionMetadataType, abstractEnsIndexerSchema_label as label, abstractEnsIndexerSchema_label_relations as label_relations, abstractEnsIndexerSchema_latestRegistrationIndex as latestRegistrationIndex, abstractEnsIndexerSchema_latestRegistrationIndex_relations as latestRegistrationIndex_relations, abstractEnsIndexerSchema_latestRenewalIndex as latestRenewalIndex, abstractEnsIndexerSchema_latestRenewalIndex_relations as latestRenewalIndex_relations, abstractEnsIndexerSchema_migratedNodeByNode as migratedNodeByNode, abstractEnsIndexerSchema_migratedNodeByParent as migratedNodeByParent, abstractEnsIndexerSchema_nameSales as nameSales, abstractEnsIndexerSchema_nameTokens as nameTokens, abstractEnsIndexerSchema_permissions as permissions, abstractEnsIndexerSchema_permissionsEvent as permissionsEvent, abstractEnsIndexerSchema_permissionsResource as permissionsResource, abstractEnsIndexerSchema_permissionsUser as permissionsUser, abstractEnsIndexerSchema_permissionsUserEvent as permissionsUserEvent, abstractEnsIndexerSchema_registrarActionRelations as registrarActionRelations, abstractEnsIndexerSchema_registrarActionType as registrarActionType, abstractEnsIndexerSchema_registrarActions as registrarActions, abstractEnsIndexerSchema_registration as registration, abstractEnsIndexerSchema_registrationLifecycleRelations as registrationLifecycleRelations, abstractEnsIndexerSchema_registrationLifecycles as registrationLifecycles, abstractEnsIndexerSchema_registrationType as registrationType, abstractEnsIndexerSchema_registration_relations as registration_relations, abstractEnsIndexerSchema_registry as registry, abstractEnsIndexerSchema_registryCanonicalDomain as registryCanonicalDomain, abstractEnsIndexerSchema_registryType as registryType, abstractEnsIndexerSchema_relations_domain as relations_domain, abstractEnsIndexerSchema_relations_permissions as relations_permissions, abstractEnsIndexerSchema_relations_permissionsResource as relations_permissionsResource, abstractEnsIndexerSchema_relations_permissionsUser as relations_permissionsUser, abstractEnsIndexerSchema_relations_registry as relations_registry, abstractEnsIndexerSchema_renewal as renewal, abstractEnsIndexerSchema_renewal_relations as renewal_relations, abstractEnsIndexerSchema_resolver as resolver, abstractEnsIndexerSchema_resolverAddressRecord as resolverAddressRecord, abstractEnsIndexerSchema_resolverAddressRecordRelations as resolverAddressRecordRelations, abstractEnsIndexerSchema_resolverEvent as resolverEvent, abstractEnsIndexerSchema_resolverRecords as resolverRecords, abstractEnsIndexerSchema_resolverRecords_relations as resolverRecords_relations, abstractEnsIndexerSchema_resolverTextRecord as resolverTextRecord, abstractEnsIndexerSchema_resolverTextRecordRelations as resolverTextRecordRelations, abstractEnsIndexerSchema_resolver_relations as resolver_relations, abstractEnsIndexerSchema_reverseNameRecord as reverseNameRecord, abstractEnsIndexerSchema_subgraph_abiChanged as subgraph_abiChanged, abstractEnsIndexerSchema_subgraph_abiChangedRelations as subgraph_abiChangedRelations, abstractEnsIndexerSchema_subgraph_account as subgraph_account, abstractEnsIndexerSchema_subgraph_accountRelations as subgraph_accountRelations, abstractEnsIndexerSchema_subgraph_addrChanged as subgraph_addrChanged, abstractEnsIndexerSchema_subgraph_addrChangedRelations as subgraph_addrChangedRelations, abstractEnsIndexerSchema_subgraph_authorisationChanged as subgraph_authorisationChanged, abstractEnsIndexerSchema_subgraph_authorisationChangedRelations as subgraph_authorisationChangedRelations, abstractEnsIndexerSchema_subgraph_contenthashChanged as subgraph_contenthashChanged, abstractEnsIndexerSchema_subgraph_contenthashChangedRelations as subgraph_contenthashChangedRelations, abstractEnsIndexerSchema_subgraph_domain as subgraph_domain, abstractEnsIndexerSchema_subgraph_domainRelations as subgraph_domainRelations, abstractEnsIndexerSchema_subgraph_expiryExtended as subgraph_expiryExtended, abstractEnsIndexerSchema_subgraph_expiryExtendedRelations as subgraph_expiryExtendedRelations, abstractEnsIndexerSchema_subgraph_fusesSet as subgraph_fusesSet, abstractEnsIndexerSchema_subgraph_fusesSetRelations as subgraph_fusesSetRelations, abstractEnsIndexerSchema_subgraph_interfaceChanged as subgraph_interfaceChanged, abstractEnsIndexerSchema_subgraph_interfaceChangedRelations as subgraph_interfaceChangedRelations, abstractEnsIndexerSchema_subgraph_multicoinAddrChanged as subgraph_multicoinAddrChanged, abstractEnsIndexerSchema_subgraph_multicoinAddrChangedRelations as subgraph_multicoinAddrChangedRelations, abstractEnsIndexerSchema_subgraph_nameChanged as subgraph_nameChanged, abstractEnsIndexerSchema_subgraph_nameChangedRelations as subgraph_nameChangedRelations, abstractEnsIndexerSchema_subgraph_nameRegistered as subgraph_nameRegistered, abstractEnsIndexerSchema_subgraph_nameRegisteredRelations as subgraph_nameRegisteredRelations, abstractEnsIndexerSchema_subgraph_nameRenewed as subgraph_nameRenewed, abstractEnsIndexerSchema_subgraph_nameRenewedRelations as subgraph_nameRenewedRelations, abstractEnsIndexerSchema_subgraph_nameTransferred as subgraph_nameTransferred, abstractEnsIndexerSchema_subgraph_nameTransferredRelations as subgraph_nameTransferredRelations, abstractEnsIndexerSchema_subgraph_nameUnwrapped as subgraph_nameUnwrapped, abstractEnsIndexerSchema_subgraph_nameUnwrappedRelations as subgraph_nameUnwrappedRelations, abstractEnsIndexerSchema_subgraph_nameWrapped as subgraph_nameWrapped, abstractEnsIndexerSchema_subgraph_nameWrappedRelations as subgraph_nameWrappedRelations, abstractEnsIndexerSchema_subgraph_newOwner as subgraph_newOwner, abstractEnsIndexerSchema_subgraph_newOwnerRelations as subgraph_newOwnerRelations, abstractEnsIndexerSchema_subgraph_newResolver as subgraph_newResolver, abstractEnsIndexerSchema_subgraph_newResolverRelations as subgraph_newResolverRelations, abstractEnsIndexerSchema_subgraph_newTTL as subgraph_newTTL, abstractEnsIndexerSchema_subgraph_newTTLRelations as subgraph_newTTLRelations, abstractEnsIndexerSchema_subgraph_pubkeyChanged as subgraph_pubkeyChanged, abstractEnsIndexerSchema_subgraph_pubkeyChangedRelations as subgraph_pubkeyChangedRelations, abstractEnsIndexerSchema_subgraph_registration as subgraph_registration, abstractEnsIndexerSchema_subgraph_registrationRelations as subgraph_registrationRelations, abstractEnsIndexerSchema_subgraph_resolver as subgraph_resolver, abstractEnsIndexerSchema_subgraph_resolverRelations as subgraph_resolverRelations, abstractEnsIndexerSchema_subgraph_textChanged as subgraph_textChanged, abstractEnsIndexerSchema_subgraph_textChangedRelations as subgraph_textChangedRelations, abstractEnsIndexerSchema_subgraph_transfer as subgraph_transfer, abstractEnsIndexerSchema_subgraph_transferRelations as subgraph_transferRelations, abstractEnsIndexerSchema_subgraph_versionChanged as subgraph_versionChanged, abstractEnsIndexerSchema_subgraph_versionChangedRelations as subgraph_versionChangedRelations, abstractEnsIndexerSchema_subgraph_wrappedDomain as subgraph_wrappedDomain, abstractEnsIndexerSchema_subgraph_wrappedDomainRelations as subgraph_wrappedDomainRelations, abstractEnsIndexerSchema_subgraph_wrappedTransfer as subgraph_wrappedTransfer, abstractEnsIndexerSchema_subgraph_wrappedTransferRelations as subgraph_wrappedTransferRelations, abstractEnsIndexerSchema_subregistries as subregistries, abstractEnsIndexerSchema_subregistryRelations as subregistryRelations };
7248
7369
  }
7249
7370
 
7250
- export { subgraph_addrChangedRelations as $, registrationType as A, registration_relations as B, registry as C, registryCanonicalDomain as D, relations_permissions as E, relations_permissionsResource as F, relations_permissionsUser as G, relations_registry as H, relations_v1Domain as I, relations_v2Domain as J, renewal as K, renewal_relations as L, resolver as M, resolverAddressRecord as N, resolverAddressRecordRelations as O, resolverEvent as P, resolverRecords as Q, resolverRecords_relations as R, resolverTextRecord as S, resolverTextRecordRelations as T, resolver_relations as U, reverseNameRecord as V, subgraph_abiChanged as W, subgraph_abiChangedRelations as X, subgraph_account as Y, subgraph_accountRelations as Z, subgraph_addrChanged as _, abstractEnsIndexerSchema as a, subgraph_authorisationChanged as a0, subgraph_authorisationChangedRelations as a1, subgraph_contenthashChanged as a2, subgraph_contenthashChangedRelations as a3, subgraph_domain as a4, subgraph_domainRelations as a5, subgraph_expiryExtended as a6, subgraph_expiryExtendedRelations as a7, subgraph_fusesSet as a8, subgraph_fusesSetRelations as a9, subgraph_resolver as aA, subgraph_resolverRelations as aB, subgraph_textChanged as aC, subgraph_textChangedRelations as aD, subgraph_transfer as aE, subgraph_transferRelations as aF, subgraph_versionChanged as aG, subgraph_versionChangedRelations as aH, subgraph_wrappedDomain as aI, subgraph_wrappedDomainRelations as aJ, subgraph_wrappedTransfer as aK, subgraph_wrappedTransferRelations as aL, subregistries as aM, subregistryRelations as aN, v1Domain as aO, v2Domain as aP, subgraph_interfaceChanged as aa, subgraph_interfaceChangedRelations as ab, subgraph_multicoinAddrChanged as ac, subgraph_multicoinAddrChangedRelations as ad, subgraph_nameChanged as ae, subgraph_nameChangedRelations as af, subgraph_nameRegistered as ag, subgraph_nameRegisteredRelations as ah, subgraph_nameRenewed as ai, subgraph_nameRenewedRelations as aj, subgraph_nameTransferred as ak, subgraph_nameTransferredRelations as al, subgraph_nameUnwrapped as am, subgraph_nameUnwrappedRelations as an, subgraph_nameWrapped as ao, subgraph_nameWrappedRelations as ap, subgraph_newOwner as aq, subgraph_newOwnerRelations as ar, subgraph_newResolver as as, subgraph_newResolverRelations as at, subgraph_newTTL as au, subgraph_newTTLRelations as av, subgraph_pubkeyChanged as aw, subgraph_pubkeyChangedRelations as ax, subgraph_registration as ay, subgraph_registrationRelations as az, account as b, account_relations as c, domainEvent as d, domainResolverRelation as e, domainResolverRelation_relations as f, event as g, internal_registrarActionMetadataType as h, internal_registrarActionMetadata as i, label_relations as j, latestRegistrationIndex as k, label as l, latestRenewalIndex as m, migratedNode as n, nameSales as o, nameTokens as p, permissions as q, permissionsEvent as r, permissionsResource as s, permissionsUser as t, registrarActionRelations as u, registrarActionType as v, registrarActions as w, registration as x, registrationLifecycleRelations as y, registrationLifecycles as z };
7371
+ export { reverseNameRecord as $, registrarActionRelations as A, registrarActionType as B, registrarActions as C, registration as D, registrationLifecycleRelations as E, registrationLifecycles as F, registrationType as G, registration_relations as H, registry as I, registryCanonicalDomain as J, registryType as K, relations_domain as L, relations_permissions as M, relations_permissionsResource as N, relations_permissionsUser as O, relations_registry as P, renewal as Q, renewal_relations as R, resolver as S, resolverAddressRecord as T, resolverAddressRecordRelations as U, resolverEvent as V, resolverRecords as W, resolverRecords_relations as X, resolverTextRecord as Y, resolverTextRecordRelations as Z, resolver_relations as _, abstractEnsIndexerSchema as a, subgraph_abiChanged as a0, subgraph_abiChangedRelations as a1, subgraph_account as a2, subgraph_accountRelations as a3, subgraph_addrChanged as a4, subgraph_addrChangedRelations as a5, subgraph_authorisationChanged as a6, subgraph_authorisationChangedRelations as a7, subgraph_contenthashChanged as a8, subgraph_contenthashChangedRelations as a9, subgraph_newTTL as aA, subgraph_newTTLRelations as aB, subgraph_pubkeyChanged as aC, subgraph_pubkeyChangedRelations as aD, subgraph_registration as aE, subgraph_registrationRelations as aF, subgraph_resolver as aG, subgraph_resolverRelations as aH, subgraph_textChanged as aI, subgraph_textChangedRelations as aJ, subgraph_transfer as aK, subgraph_transferRelations as aL, subgraph_versionChanged as aM, subgraph_versionChangedRelations as aN, subgraph_wrappedDomain as aO, subgraph_wrappedDomainRelations as aP, subgraph_wrappedTransfer as aQ, subgraph_wrappedTransferRelations as aR, subregistries as aS, subregistryRelations as aT, subgraph_domain as aa, subgraph_domainRelations as ab, subgraph_expiryExtended as ac, subgraph_expiryExtendedRelations as ad, subgraph_fusesSet as ae, subgraph_fusesSetRelations as af, subgraph_interfaceChanged as ag, subgraph_interfaceChangedRelations as ah, subgraph_multicoinAddrChanged as ai, subgraph_multicoinAddrChangedRelations as aj, subgraph_nameChanged as ak, subgraph_nameChangedRelations as al, subgraph_nameRegistered as am, subgraph_nameRegisteredRelations as an, subgraph_nameRenewed as ao, subgraph_nameRenewedRelations as ap, subgraph_nameTransferred as aq, subgraph_nameTransferredRelations as ar, subgraph_nameUnwrapped as as, subgraph_nameUnwrappedRelations as at, subgraph_nameWrapped as au, subgraph_nameWrappedRelations as av, subgraph_newOwner as aw, subgraph_newOwnerRelations as ax, subgraph_newResolver as ay, subgraph_newResolverRelations as az, account as b, account_relations as c, domain as d, domainEvent as e, domainResolverRelation as f, domainResolverRelation_relations as g, domainType as h, event as i, internal_registrarActionMetadata as j, internal_registrarActionMetadataType as k, label as l, label_relations as m, latestRegistrationIndex as n, latestRegistrationIndex_relations as o, latestRenewalIndex as p, latestRenewalIndex_relations as q, migratedNodeByNode as r, migratedNodeByParent as s, nameSales as t, nameTokens as u, permissions as v, permissionsEvent as w, permissionsResource as x, permissionsUser as y, permissionsUserEvent as z };