const{IndexEncoder:e,c:n,b4a:t}=require("hyperdb/runtime"),{version:r,getEncoding:o,setVersion:c}=require("./messages.js"),d={schema:r,db:1},l=require("../../lib/db-actions.js"),s=new e([e.STRING],{prefix:0});function u(e){const n=e.name;return void 0===n?[]:[n]}const i=o("@keet-registry/identity/hyperdb#0"),a={name:"@keet-registry/identity",id:0,version:0,encodeKey(e){const n=[e.name];return s.encode(n)},encodeKeyRange:({gt:e,lt:n,gte:t,lte:r}={})=>s.encodeRange({gt:e?u(e):null,lt:n?u(n):null,gte:t?u(t):null,lte:r?u(r):null}),encodeValue(e,n,r){c(e);const o={start:0,end:0,buffer:null};return i.preencode(o,r),o.buffer=t.allocUnsafe(o.end),i.encode(o,r),o.buffer},trigger:null,reconstruct:function(e,n,t){const r=s.decode(n);c(e);const o={start:0,end:t.byteLength,buffer:t},d=i.decode(o);return d.name=r[0],d},reconstructKey:function(e){return{name:s.decode(e)[0]}},indexes:[],decodedVersion:0},y=new e([e.BUFFER,e.STRING],{prefix:1});function f(e){const n=[],t=e.publicKey;if(void 0===t)return n;n.push(t);const r=e.name;return void 0===r||n.push(r),n}const g={name:"@keet-registry/identity-by-key",version:0,id:1,encodeKey:e=>y.encode(f(e)),encodeKeyRange:({gt:e,lt:n,gte:t,lte:r}={})=>y.encodeRange({gt:e?f(e):null,lt:n?f(n):null,gte:t?f(t):null,lte:r?f(r):null}),encodeValue:e=>g.collection.encodeKey(e),encodeIndexKeys:(e,n)=>[y.encode([e.publicKey,e.name])],reconstruct:(e,n)=>n,offset:a.indexes.length,collection:a};a.indexes.push(g);const b=new e([e.STRING],{prefix:2}),m=l.mapByDeleted;function v(e){const n=e.name;return void 0===n?[]:[n]}const K={name:"@keet-registry/identity-by-deleted",version:0,id:2,encodeKey:e=>b.encode(v(e)),encodeKeyRange:({gt:e,lt:n,gte:t,lte:r}={})=>b.encodeRange({gt:e?v(e):null,lt:n?v(n):null,gte:t?v(t):null,lte:r?v(r):null}),encodeValue:e=>K.collection.encodeKey(e),encodeIndexKeys(e,n){const t=m(e,n),r=new Array(t.length);for(let e=0;e<t.length;e++){const n=t[e];r[e]=b.encode([n.name])}return r},reconstruct:(e,n)=>n,offset:a.indexes.length,collection:a};a.indexes.push(K);const p=new e([e.STRING],{prefix:3});function k(e){const n=e.profile?.username;return void 0===n?[]:[n]}const x=o("@keet-registry-v3/identity/hyperdb#3"),R={name:"@keet-registry-v3/identity",id:3,version:0,encodeKey(e){const n=[e.profile.username];return p.encode(n)},encodeKeyRange:({gt:e,lt:n,gte:t,lte:r}={})=>p.encodeRange({gt:e?k(e):null,lt:n?k(n):null,gte:t?k(t):null,lte:r?k(r):null}),encodeValue(e,n,r){c(e);const o={start:0,end:0,buffer:null};return x.preencode(o,r),o.buffer=t.allocUnsafe(o.end),x.encode(o,r),o.buffer},trigger:null,reconstruct:function(e,n,t){const r=p.decode(n);c(e);const o={start:0,end:t.byteLength,buffer:t},d=x.decode(o);return d.profile.username=r[0],d},reconstructKey:function(e){return{profile:{username:p.decode(e)[0]}}},indexes:[],decodedVersion:0},h=new e([e.STRING],{prefix:4});function V(e){const n=e.username;return void 0===n?[]:[n]}const w=o("@keet-registry-v3/reserved/hyperdb#4"),I={name:"@keet-registry-v3/reserved",id:4,version:0,encodeKey(e){const n=[e.username];return h.encode(n)},encodeKeyRange:({gt:e,lt:n,gte:t,lte:r}={})=>h.encodeRange({gt:e?V(e):null,lt:n?V(n):null,gte:t?V(t):null,lte:r?V(r):null}),encodeValue(e,n,r){c(e);const o={start:0,end:0,buffer:null};return w.preencode(o,r),o.buffer=t.allocUnsafe(o.end),w.encode(o,r),o.buffer},trigger:null,reconstruct:function(e,n,t){const r=h.decode(n);c(e);const o={start:0,end:t.byteLength,buffer:t},d=w.decode(o);return d.username=r[0],d},reconstructKey:function(e){return{username:h.decode(e)[0]}},indexes:[],decodedVersion:0},U=new e([],{prefix:5}),F=o("@keet-registry-v3/manifest"),E={name:"@keet-registry-v3/manifest",id:5,version:0,encodeKey:e=>U.encode([]),encodeKeyRange:({gt:e,lt:n,gte:t,lte:r}={})=>U.encodeRange({gt:e?[]:null,lt:n?[]:null,gte:t?[]:null,lte:r?[]:null}),encodeValue(e,n,r){c(e);const o={start:0,end:0,buffer:null};return F.preencode(o,r),o.buffer=t.allocUnsafe(o.end),F.encode(o,r),o.buffer},trigger:null,reconstruct:function(e,n,t){c(e);const r={start:0,end:t.byteLength,buffer:t};return F.decode(r)},reconstructKey:function(e){return{}},indexes:[],decodedVersion:0},B=new e([e.BUFFER],{prefix:6});function G(e){const n=e.memberKey;return void 0===n?[]:[n]}const L=o("@keet/identity-attestation/hyperdb#6"),N={name:"@keet-registry-v3/attestation",id:6,version:0,encodeKey(e){const n=[e.memberKey];return B.encode(n)},encodeKeyRange:({gt:e,lt:n,gte:t,lte:r}={})=>B.encodeRange({gt:e?G(e):null,lt:n?G(n):null,gte:t?G(t):null,lte:r?G(r):null}),encodeValue(e,n,r){c(e);const o={start:0,end:0,buffer:null};return L.preencode(o,r),o.buffer=t.allocUnsafe(o.end),L.encode(o,r),o.buffer},trigger:null,reconstruct:function(e,n,t){const r=B.decode(n);c(e);const o={start:0,end:t.byteLength,buffer:t},d=L.decode(o);return d.memberKey=r[0],d},reconstructKey:function(e){return{memberKey:B.decode(e)[0]}},indexes:[],decodedVersion:0},S=new e([e.BUFFER],{prefix:7});function T(e){const n=e.attestation?.memberKey;return void 0===n?[]:[n]}const q={name:"@keet-registry-v3/identity-by-key",version:0,id:7,encodeKey:e=>S.encode(T(e)),encodeKeyRange:({gt:e,lt:n,gte:t,lte:r}={})=>S.encodeRange({gt:e?T(e):null,lt:n?T(n):null,gte:t?T(t):null,lte:r?T(r):null}),encodeValue:e=>q.collection.encodeKey(e),encodeIndexKeys:(e,n)=>[S.encode([e.attestation.memberKey])],reconstruct:(e,n)=>n,offset:R.indexes.length,collection:R};R.indexes.push(q);const j=new e([e.BUFFER,e.STRING],{prefix:8});function A(e){const n=[],t=e.memberKey;if(void 0===t)return n;n.push(t);const r=e.username;return void 0===r||n.push(r),n}const C={name:"@keet-registry-v3/reserved-by-key",version:0,id:8,encodeKey:e=>j.encode(A(e)),encodeKeyRange:({gt:e,lt:n,gte:t,lte:r}={})=>j.encodeRange({gt:e?A(e):null,lt:n?A(n):null,gte:t?A(t):null,lte:r?A(r):null}),encodeValue:e=>C.collection.encodeKey(e),encodeIndexKeys:(e,n)=>[j.encode([e.memberKey,e.username])],reconstruct:(e,n)=>n,offset:I.indexes.length,collection:I};I.indexes.push(C);const D=new e([e.BUFFER],{prefix:9});function z(e){const n=e.memberKey;return void 0===n?[]:[n]}const H=o("@keet-registry-v3/blocked/hyperdb#9"),J={name:"@keet-registry-v3/blocked",id:9,version:1,encodeKey(e){const n=[e.memberKey];return D.encode(n)},encodeKeyRange:({gt:e,lt:n,gte:t,lte:r}={})=>D.encodeRange({gt:e?z(e):null,lt:n?z(n):null,gte:t?z(t):null,lte:r?z(r):null}),encodeValue(e,n,r){c(e);const o={start:0,end:2,buffer:null};return H.preencode(o,r),o.buffer=t.allocUnsafe(o.end),o.buffer[o.start++]=0,o.buffer[o.start++]=n,H.encode(o,r),o.buffer},trigger:null,reconstruct:function(e,t,r){const o=D.decode(t);c(e);const d={start:0,end:r.byteLength,buffer:r},l=n.uint.decode(d);if(0!==l)throw new Error("Unknown collection type: "+l);J.decodedVersion=n.uint.decode(d);const s=H.decode(d);return s.memberKey=o[0],s},reconstructKey:function(e){return{memberKey:D.decode(e)[0]}},indexes:[],decodedVersion:0},M=[a,R,I,E,N,J],O=[g,K,q,C];module.exports={versions:d,collections:M,indexes:O,resolveCollection:function(e){switch(e){case"@keet-registry/identity":return a;case"@keet-registry-v3/identity":return R;case"@keet-registry-v3/reserved":return I;case"@keet-registry-v3/manifest":return E;case"@keet-registry-v3/attestation":return N;case"@keet-registry-v3/blocked":return J;default:return null}},resolveIndex:function(e){switch(e){case"@keet-registry/identity-by-key":return g;case"@keet-registry/identity-by-deleted":return K;case"@keet-registry-v3/identity-by-key":return q;case"@keet-registry-v3/reserved-by-key":return C;default:return null}}};