CommunitySolidServer/7.x/docs/classes/WrappedIndexedStorage.html

128 lines
136 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html><html class="default" lang="en"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>WrappedIndexedStorage | Community Solid Server - v7.1.1</title><meta name="description" content="Documentation for Community Solid Server"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><link rel="stylesheet" href="../assets/custom.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">Community Solid Server - v7.1.1</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb"><li><a href="../modules.html">Community Solid Server</a></li><li><a href="WrappedIndexedStorage.html">WrappedIndexedStorage</a></li></ul><h1>Class WrappedIndexedStorage&lt;T&gt;</h1></div><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><p>An <a href="../interfaces/IndexedStorage.html" class="tsd-kind-interface">IndexedStorage</a> that makes use of 2 <a href="../interfaces/KeyValueStorage.html" class="tsd-kind-interface">KeyValueStorage</a>s to implement the interface.
Due to being limited by key/value storages, there are some restrictions on the allowed type definitions:</p>
<ul>
<li>There needs to be exactly 1 type with no references to other types.</li>
<li>All other types need to have exactly 1 reference to another type.</li>
<li>Types can't reference each other to create a cycle of references.</li>
</ul>
<p>All of the above to create a tree-like structure of references.
Such a tree is then stored in one of the storages.
The other storage is used to store all indexes that are used to find the correct tree object when solving queries.</p>
</div><div class="tsd-comment tsd-typography"></div></section> <section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="T" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">T</span><span class="tsd-signature-keyword"> extends </span><a href="../types/IndexTypeCollection.html" class="tsd-signature-type tsd-kind-type-alias">IndexTypeCollection</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">&gt;</span></span></li></ul></section> <section class="tsd-panel"><h4>Implements</h4><ul class="tsd-hierarchy"><li><a href="../interfaces/IndexedStorage.html" class="tsd-signature-type tsd-kind-interface">IndexedStorage</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">&gt;</span></li></ul></section><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L52">src/storage/keyvalue/WrappedIndexedStorage.ts:52</a></li></ul></aside><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Constructors</h3><div class="tsd-index-list"><a href="WrappedIndexedStorage.html#constructor" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a>
</div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="WrappedIndexedStorage.html#logger" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>logger</span></a>
</div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Accessors</h3><div class="tsd-index-list"><a href="WrappedIndexedStorage.html#rootType" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>root<wbr/>Type</span></a>
</div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Methods</h3><div class="tsd-index-list"><a href="WrappedIndexedStorage.html#create" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>create</span></a>
<a href="WrappedIndexedStorage.html#createIndex" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>create<wbr/>Index</span></a>
<a href="WrappedIndexedStorage.html#defineType" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>define<wbr/>Type</span></a>
<a href="WrappedIndexedStorage.html#delete" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>delete</span></a>
<a href="WrappedIndexedStorage.html#entries" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>entries</span></a>
<a href="WrappedIndexedStorage.html#find" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>find</span></a>
<a href="WrappedIndexedStorage.html#findIds" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>find<wbr/>Ids</span></a>
<a href="WrappedIndexedStorage.html#findIndexedRoots" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>find<wbr/>Indexed<wbr/>Roots</span></a>
<a href="WrappedIndexedStorage.html#get" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get</span></a>
<a href="WrappedIndexedStorage.html#getChildObjects" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Child<wbr/>Objects</span></a>
<a href="WrappedIndexedStorage.html#getChildRelations" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Child<wbr/>Relations</span></a>
<a href="WrappedIndexedStorage.html#getContainingRecord" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Containing<wbr/>Record</span></a>
<a href="WrappedIndexedStorage.html#getIndexKey" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Index<wbr/>Key</span></a>
<a href="WrappedIndexedStorage.html#getParentRelation" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Parent<wbr/>Relation</span></a>
<a href="WrappedIndexedStorage.html#getPathRecords" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Path<wbr/>Records</span></a>
<a href="WrappedIndexedStorage.html#getPathToType" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Path<wbr/>To<wbr/>Type</span></a>
<a href="WrappedIndexedStorage.html#getRoot" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Root</span></a>
<a href="WrappedIndexedStorage.html#has" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>has</span></a>
<a href="WrappedIndexedStorage.html#set" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>set</span></a>
<a href="WrappedIndexedStorage.html#setField" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>set<wbr/>Field</span></a>
<a href="WrappedIndexedStorage.html#solveQuery" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>solve<wbr/>Query</span></a>
<a href="WrappedIndexedStorage.html#toTypeObject" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>to<wbr/>Type<wbr/>Object</span></a>
<a href="WrappedIndexedStorage.html#updateDeepTypeIndex" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>update<wbr/>Deep<wbr/>Type<wbr/>Index</span></a>
<a href="WrappedIndexedStorage.html#updateKeyIndex" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>update<wbr/>Key<wbr/>Index</span></a>
<a href="WrappedIndexedStorage.html#updateTypeIndex" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>update<wbr/>Type<wbr/>Index</span></a>
<a href="WrappedIndexedStorage.html#updateValue" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>update<wbr/>Value</span></a>
<a href="WrappedIndexedStorage.html#validateDefinition" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>validate<wbr/>Definition</span></a>
</div></section></div></details></section></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Constructors"><h2><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg> Constructors</h2></summary><section><section class="tsd-panel tsd-member"><a id="constructor" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>constructor</span><a href="#constructor" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="constructor.new_WrappedIndexedStorage" class="tsd-anchor"></a><span class="tsd-kind-constructor-signature">new <wbr/>Wrapped<wbr/>Indexed<wbr/>Storage</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">valueStorage</span>, <span class="tsd-kind-parameter">indexStorage</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="WrappedIndexedStorage.html" class="tsd-signature-type tsd-kind-class">WrappedIndexedStorage</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">&gt;</span><a href="#constructor.new_WrappedIndexedStorage" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="constructor.new_WrappedIndexedStorage.T-1" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">T</span><span class="tsd-signature-keyword"> extends </span><a href="../types/IndexTypeCollection.html" class="tsd-signature-type tsd-kind-type-alias">IndexTypeCollection</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">&gt;</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">valueStorage</span>: <a href="../interfaces/KeyValueStorage.html" class="tsd-signature-type tsd-kind-interface">KeyValueStorage</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a><span class="tsd-signature-symbol">&gt;</span></span></li><li><span><span class="tsd-kind-parameter">indexStorage</span>: <a href="../interfaces/KeyValueStorage.html" class="tsd-signature-type tsd-kind-interface">KeyValueStorage</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <a href="WrappedIndexedStorage.html" class="tsd-signature-type tsd-kind-class">WrappedIndexedStorage</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">&gt;</span></h4><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L84">src/storage/keyvalue/WrappedIndexedStorage.ts:84</a></li></ul></aside></li></ul></section></section></details><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Properties"><h2><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg> Properties</h2></summary><section><section class="tsd-panel tsd-member tsd-is-protected"><a id="logger" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code> <code class="tsd-tag">Readonly</code><span>logger</span><a href="#logger" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">logger</span><span class="tsd-signature-symbol">:</span> <a href="../interfaces/Logger.html" class="tsd-signature-type tsd-kind-interface">Logger</a><span class="tsd-signature-symbol"> = ...</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L53">src/storage/keyvalue/WrappedIndexedStorage.ts:53</a></li></ul></aside></section></section></details><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Accessors"><h2><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg> Accessors</h2></summary><section><section class="tsd-panel tsd-member tsd-is-protected"><a id="rootType" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code><span>root<wbr/>Type</span><a href="#rootType" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class="tsd-signature" id="rootType.rootType-1"><span class="tsd-signature-keyword">get</span> rootType<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>The root type for this storage.
Use this instead of rootTypeVar to prevent having to check for <code>undefined</code>.
This value will always be defined if the type definitions have been validated.</p>
</div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L279">src/storage/keyvalue/WrappedIndexedStorage.ts:279</a></li></ul></aside></li></ul></section></section></details><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Methods"><h2><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg> Methods</h2></summary><section><section class="tsd-panel tsd-member"><a id="create" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>create</span><a href="#create" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="create.create-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">create</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#create.create-1.TType">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">value</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><a href="../types/TypeObject.html" class="tsd-signature-type tsd-kind-type-alias">TypeObject</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#create.create-1.TType">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span><a href="#create.create-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Creates an object of the given type.
The storage will generate an identifier for the newly created object.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="create.create-1.TType" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#create.create-1.TType">TType</a></span><div class="tsd-comment tsd-typography"><p>The type to create.</p>
</div><div class="tsd-comment tsd-typography"></div></li><li><span><span class="tsd-kind-parameter">value</span>: <a href="../types/CreateTypeObject.html" class="tsd-signature-type tsd-kind-type-alias">CreateTypeObject</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#create.create-1.TType">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span></span><div class="tsd-comment tsd-typography"><p>The value to set for the created object.</p>
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><a href="../types/TypeObject.html" class="tsd-signature-type tsd-kind-type-alias">TypeObject</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#create.create-1.TType">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span></h4><p>A representation of the newly created object, including its new identifier.</p>
<div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/IndexedStorage.html">IndexedStorage</a>.<a href="../interfaces/IndexedStorage.html#create">create</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L151">src/storage/keyvalue/WrappedIndexedStorage.ts:151</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="createIndex" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>create<wbr/>Index</span><a href="#createIndex" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="createIndex.createIndex-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">create<wbr/>Index</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#createIndex.createIndex-1.TType-1">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">key</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span><a href="#createIndex.createIndex-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Creates an index on a key of the given type, to allow for better queries involving those keys.
Similar to <a href="../interfaces/IndexedStorage.html#defineType" class="tsd-kind-property">IndexedStorage.defineType</a> these calls need to happen first.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="createIndex.createIndex-1.TType-1" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#createIndex.createIndex-1.TType-1">TType</a></span><div class="tsd-comment tsd-typography"><p>The type to create an index on.</p>
</div><div class="tsd-comment tsd-typography"></div></li><li><span><span class="tsd-kind-parameter">key</span>: <a href="../types/StringKey.html" class="tsd-signature-type tsd-kind-type-alias">StringKey</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#createIndex.createIndex-1.TType-1">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span></span><div class="tsd-comment tsd-typography"><p>The key of that type to create an index on.</p>
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/IndexedStorage.html">IndexedStorage</a>.<a href="../interfaces/IndexedStorage.html#createIndex">createIndex</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L119">src/storage/keyvalue/WrappedIndexedStorage.ts:119</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="defineType" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>define<wbr/>Type</span><a href="#defineType" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="defineType.defineType-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">define<wbr/>Type</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#defineType.defineType-1.TType-2">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">description</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span><a href="#defineType.defineType-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Informs the storage of the definition of a specific type.
A definition is a key/value object with the values being a valid <a href="../types/ValueTypeDescription.html" class="tsd-kind-type-alias">ValueTypeDescription</a>.
Generally, this call needs to happen for every type of this storage,
and before any calls are made to interact with the data.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="defineType.defineType-1.TType-2" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#defineType.defineType-1.TType-2">TType</a></span><div class="tsd-comment tsd-typography"><p>The type to define.</p>
</div><div class="tsd-comment tsd-typography"></div></li><li><span><span class="tsd-kind-parameter">description</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#defineType.defineType-1.TType-2">TType</a><span class="tsd-signature-symbol">]</span></span><div class="tsd-comment tsd-typography"><p>A description of the values stored in objects of that type.</p>
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/IndexedStorage.html">IndexedStorage</a>.<a href="../interfaces/IndexedStorage.html#defineType">defineType</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L94">src/storage/keyvalue/WrappedIndexedStorage.ts:94</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="delete" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>delete</span><a href="#delete" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="delete.delete-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">delete</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#delete.delete-1.TType-3">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">id</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span><a href="#delete.delete-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Deletes the given object.
This will also delete all objects that reference that object if the corresponding key is not optional.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="delete.delete-1.TType-3" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#delete.delete-1.TType-3">TType</a></span><div class="tsd-comment tsd-typography"><p>The type of the object to delete.</p>
</div><div class="tsd-comment tsd-typography"></div></li><li><span><span class="tsd-kind-parameter">id</span>: <span class="tsd-signature-type">string</span></span><div class="tsd-comment tsd-typography"><p>The identifier of the object.</p>
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/IndexedStorage.html">IndexedStorage</a>.<a href="../interfaces/IndexedStorage.html#delete">delete</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L206">src/storage/keyvalue/WrappedIndexedStorage.ts:206</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="entries" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>entries</span><a href="#entries" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="entries.entries-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">entries</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#entries.entries-1.TType-4">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">AsyncIterableIterator</span><span class="tsd-signature-symbol">&lt;</span><a href="../types/TypeObject.html" class="tsd-signature-type tsd-kind-type-alias">TypeObject</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#entries.entries-1.TType-4">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span><a href="#entries.entries-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Returns an iterator over all objects of the given type.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="entries.entries-1.TType-4" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#entries.entries-1.TType-4">TType</a></span><div class="tsd-comment tsd-typography"><p>The type to iterate over.</p>
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">AsyncIterableIterator</span><span class="tsd-signature-symbol">&lt;</span><a href="../types/TypeObject.html" class="tsd-signature-type tsd-kind-type-alias">TypeObject</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#entries.entries-1.TType-4">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/IndexedStorage.html">IndexedStorage</a>.<a href="../interfaces/IndexedStorage.html#entries">entries</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L249">src/storage/keyvalue/WrappedIndexedStorage.ts:249</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="find" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>find</span><a href="#find" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="find.find-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">find</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#find.find-1.TType-5">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">query</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><a href="../types/TypeObject.html" class="tsd-signature-type tsd-kind-type-alias">TypeObject</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#find.find-1.TType-5">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span><a href="#find.find-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Finds all objects matching a specific <a href="../types/IndexedQuery.html" class="tsd-kind-type-alias">IndexedQuery</a>.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="find.find-1.TType-5" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#find.find-1.TType-5">TType</a></span><div class="tsd-comment tsd-typography"><p>The type of objects to find.</p>
</div><div class="tsd-comment tsd-typography"></div></li><li><span><span class="tsd-kind-parameter">query</span>: <span class="tsd-signature-symbol">{</span><br/><span>    </span><span class="tsd-signature-symbol">[</span><span class="tsd-kind-type-parameter">K</span><span class="tsd-signature-keyword"> in </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">?: </span><a href="../types/ValueType.html" class="tsd-signature-type tsd-kind-type-alias">ValueType</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#find.find-1.TType-5">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type tsd-kind-type-parameter">K</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-symbol">(</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#find.find-1.TType-5">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type tsd-kind-type-parameter">K</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-symbol">`</span><span class="tsd-signature-type">id:</span><span class="tsd-signature-symbol">${</span><span class="tsd-signature-type tsd-kind-type-parameter">U</span><span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">`</span><br/><span>        </span><span class="tsd-signature-symbol">? </span><span class="tsd-signature-symbol">{</span><br/><span>            </span><span class="tsd-signature-symbol">[</span><span class="tsd-kind-type-parameter">K</span><span class="tsd-signature-keyword"> in </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">?: </span><span class="tsd-signature-symbol">(</span>ValueType&lt;T[U][K]&gt; | (T[U][K] extends `id:${infer U}` ? { [K in &quot;id&quot; | keyof T[U]]?: ValueType&lt;T[U][K]&gt; | (T[U][K] extends `id:${infer U}` ? { [K in &quot;id&quot; | keyof T[U]]?: ValueType&lt;...&gt; | ... 1 more ... | undefined; } : never) | undefined; } : never) | undefined<span class="tsd-signature-symbol">)</span><br/><span>        </span><span class="tsd-signature-symbol">}</span><br/><span>        </span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">never</span><span class="tsd-signature-symbol">)</span><br/><span class="tsd-signature-symbol">}</span></span><div class="tsd-comment tsd-typography"><p>The query to execute.</p>
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><a href="../types/TypeObject.html" class="tsd-signature-type tsd-kind-type-alias">TypeObject</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#find.find-1.TType-5">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span></h4><p>A list of objects matching the query.</p>
<div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/IndexedStorage.html">IndexedStorage</a>.<a href="../interfaces/IndexedStorage.html#find">find</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L243">src/storage/keyvalue/WrappedIndexedStorage.ts:243</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="findIds" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>find<wbr/>Ids</span><a href="#findIds" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="findIds.findIds-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">find<wbr/>Ids</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#findIds.findIds-1.TType-6">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">query</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span><a href="#findIds.findIds-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Similar to <a href="../interfaces/IndexedStorage.html#find" class="tsd-kind-property">IndexedStorage.find</a>, but only returns the identifiers of the found objects.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="findIds.findIds-1.TType-6" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#findIds.findIds-1.TType-6">TType</a></span><div class="tsd-comment tsd-typography"><p>The type of objects to find.</p>
</div><div class="tsd-comment tsd-typography"></div></li><li><span><span class="tsd-kind-parameter">query</span>: <span class="tsd-signature-symbol">{</span><br/><span>    </span><span class="tsd-signature-symbol">[</span><span class="tsd-kind-type-parameter">K</span><span class="tsd-signature-keyword"> in </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">?: </span><a href="../types/ValueType.html" class="tsd-signature-type tsd-kind-type-alias">ValueType</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#findIds.findIds-1.TType-6">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type tsd-kind-type-parameter">K</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-symbol">(</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#findIds.findIds-1.TType-6">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type tsd-kind-type-parameter">K</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-symbol">`</span><span class="tsd-signature-type">id:</span><span class="tsd-signature-symbol">${</span><span class="tsd-signature-type tsd-kind-type-parameter">U</span><span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">`</span><br/><span>        </span><span class="tsd-signature-symbol">? </span><span class="tsd-signature-symbol">{</span><br/><span>            </span><span class="tsd-signature-symbol">[</span><span class="tsd-kind-type-parameter">K</span><span class="tsd-signature-keyword"> in </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">?: </span><span class="tsd-signature-symbol">(</span>ValueType&lt;T[U][K]&gt; | (T[U][K] extends `id:${infer U}` ? { [K in &quot;id&quot; | keyof T[U]]?: ValueType&lt;T[U][K]&gt; | (T[U][K] extends `id:${infer U}` ? { [K in &quot;id&quot; | keyof T[U]]?: ValueType&lt;...&gt; | ... 1 more ... | undefined; } : never) | undefined; } : never) | undefined<span class="tsd-signature-symbol">)</span><br/><span>        </span><span class="tsd-signature-symbol">}</span><br/><span>        </span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">never</span><span class="tsd-signature-symbol">)</span><br/><span class="tsd-signature-symbol">}</span></span><div class="tsd-comment tsd-typography"><p>The query to execute.</p>
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span></h4><p>A list of identifiers of the matching objects.</p>
<div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/IndexedStorage.html">IndexedStorage</a>.<a href="../interfaces/IndexedStorage.html#findIds">findIds</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L228">src/storage/keyvalue/WrappedIndexedStorage.ts:228</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><a id="findIndexedRoots" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code><span>find<wbr/>Indexed<wbr/>Roots</span><a href="#findIndexedRoots" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class="tsd-signature tsd-anchor-link"><a id="findIndexedRoots.findIndexedRoots-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">find<wbr/>Indexed<wbr/>Roots</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#findIndexedRoots.findIndexedRoots-1.TType-7">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">match</span>, <span class="tsd-kind-parameter">rootIds</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span><a href="#findIndexedRoots.findIndexedRoots-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Finds the IDs of all root objects that contain objects of the given type matching the given query
by making use of the indexes applicable to the keys in the query.
This function only looks at the keys in the query with primitive values,
object values in the query referencing parent objects are not considered.
Similarly, only indexes are used, keys without index are also ignored.</p>
<p>If an array of root IDs is provided as input,
the result will be an intersection of this array and the found identifiers.</p>
<p>If the result is an empty array, it means that there is no valid identifier matching the query,
while an <code>undefined</code> result means there is no index matching any of the query keys,
so a result can't be determined.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="findIndexedRoots.findIndexedRoots-1.TType-7" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#findIndexedRoots.findIndexedRoots-1.TType-7">TType</a></span></li><li><span><span class="tsd-kind-parameter">match</span>: <span class="tsd-signature-symbol">{</span><br/><span>    </span><span class="tsd-signature-symbol">[</span><span class="tsd-kind-type-parameter">K</span><span class="tsd-signature-keyword"> in </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">?: </span><a href="../types/ValueType.html" class="tsd-signature-type tsd-kind-type-alias">ValueType</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#findIndexedRoots.findIndexedRoots-1.TType-7">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type tsd-kind-type-parameter">K</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-symbol">(</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#findIndexedRoots.findIndexedRoots-1.TType-7">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type tsd-kind-type-parameter">K</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-symbol">`</span><span class="tsd-signature-type">id:</span><span class="tsd-signature-symbol">${</span><span class="tsd-signature-type tsd-kind-type-parameter">U</span><span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">`</span><br/><span>        </span><span class="tsd-signature-symbol">? </span><span class="tsd-signature-symbol">{</span><br/><span>            </span><span class="tsd-signature-symbol">[</span><span class="tsd-kind-type-parameter">K</span><span class="tsd-signature-keyword"> in </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">?: </span><span class="tsd-signature-symbol">(</span>ValueType&lt;T[U][K]&gt; | (T[U][K] extends `id:${infer U}` ? { [K in &quot;id&quot; | keyof T[U]]?: ValueType&lt;T[U][K]&gt; | (T[U][K] extends `id:${infer U}` ? { [K in &quot;id&quot; | keyof T[U]]?: ValueType&lt;...&gt; | ... 1 more ... | undefined; } : never) | undefined; } : never) | undefined<span class="tsd-signature-symbol">)</span><br/><span>        </span><span class="tsd-signature-symbol">}</span><br/><span>        </span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">never</span><span class="tsd-signature-symbol">)</span><br/><span class="tsd-signature-symbol">}</span></span></li><li><span><code class="tsd-tag">Optional</code><span class="tsd-kind-parameter">rootIds</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L496">src/storage/keyvalue/WrappedIndexedStorage.ts:496</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="get" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>get</span><a href="#get" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="get.get-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">get</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#get.get-1.TType-8">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">id</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><a href="../types/TypeObject.html" class="tsd-signature-type tsd-kind-type-alias">TypeObject</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#get.get-1.TType-8">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span><a href="#get.get-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Returns the object of the given type with the given identifier.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="get.get-1.TType-8" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#get.get-1.TType-8">TType</a></span><div class="tsd-comment tsd-typography"><p>The type of object to get.</p>
</div><div class="tsd-comment tsd-typography"></div></li><li><span><span class="tsd-kind-parameter">id</span>: <span class="tsd-signature-type">string</span></span><div class="tsd-comment tsd-typography"><p>The identifier of that object.</p>
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><a href="../types/TypeObject.html" class="tsd-signature-type tsd-kind-type-alias">TypeObject</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#get.get-1.TType-8">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span></h4><p>A representation of the object, or <code>undefined</code> if there is no object of that type with that identifier.</p>
<div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/IndexedStorage.html">IndexedStorage</a>.<a href="../interfaces/IndexedStorage.html#get">get</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L142">src/storage/keyvalue/WrappedIndexedStorage.ts:142</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><a id="getChildObjects" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code><span>get<wbr/>Child<wbr/>Objects</span><a href="#getChildObjects" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class="tsd-signature tsd-anchor-link"><a id="getChildObjects.getChildObjects-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">get<wbr/>Child<wbr/>Objects</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">obj</span>, <span class="tsd-kind-parameter">path</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a><span class="tsd-signature-symbol">[]</span><a href="#getChildObjects.getChildObjects-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Finds all objects in the provided object that can be found by following the provided path of virtual keys.</p>
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">obj</span>: <a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a></span></li><li><span><span class="tsd-kind-parameter">path</span>: <span class="tsd-signature-symbol">`</span><span class="tsd-signature-type">**</span><span class="tsd-signature-symbol">${</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">}</span><span class="tsd-signature-type">**</span><span class="tsd-signature-symbol">`</span><span class="tsd-signature-symbol">[]</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a><span class="tsd-signature-symbol">[]</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L333">src/storage/keyvalue/WrappedIndexedStorage.ts:333</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><a id="getChildRelations" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code><span>get<wbr/>Child<wbr/>Relations</span><a href="#getChildRelations" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class="tsd-signature tsd-anchor-link"><a id="getChildRelations.getChildRelations-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">get<wbr/>Child<wbr/>Relations</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#getChildRelations.getChildRelations-1.TType-9">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../types/IndexRelation.html" class="tsd-signature-type tsd-kind-type-alias">IndexRelation</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">[]</span><a href="#getChildRelations.getChildRelations-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Returns all relations where the given type is the parent.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="getChildRelations.getChildRelations-1.TType-9" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#getChildRelations.getChildRelations-1.TType-9">TType</a></span></li></ul></div><h4 class="tsd-returns-title">Returns <a href="../types/IndexRelation.html" class="tsd-signature-type tsd-kind-type-alias">IndexRelation</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">[]</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L416">src/storage/keyvalue/WrappedIndexedStorage.ts:416</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><a id="getContainingRecord" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code><span>get<wbr/>Containing<wbr/>Record</span><a href="#getContainingRecord" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class="tsd-signature tsd-anchor-link"><a id="getContainingRecord.getContainingRecord-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">get<wbr/>Containing<wbr/>Record</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#getContainingRecord.getContainingRecord-1.TType-10">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">rootObj</span>, <span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">id</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a><span class="tsd-signature-symbol">&gt;</span><a href="#getContainingRecord.getContainingRecord-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Finds the record in the given object that contains the given type/id combination.
This function assumes it was already verified through an index that this object contains the given combination.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="getContainingRecord.getContainingRecord-1.TType-10" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">rootObj</span>: <a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a></span></li><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#getContainingRecord.getContainingRecord-1.TType-10">TType</a></span></li><li><span><span class="tsd-kind-parameter">id</span>: <span class="tsd-signature-type">string</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L344">src/storage/keyvalue/WrappedIndexedStorage.ts:344</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><a id="getIndexKey" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code><span>get<wbr/>Index<wbr/>Key</span><a href="#getIndexKey" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class="tsd-signature tsd-anchor-link"><a id="getIndexKey.getIndexKey-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">get<wbr/>Index<wbr/>Key</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">key</span>, <span class="tsd-kind-parameter">value</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><a href="#getIndexKey.getIndexKey-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Generate the key used to store the index in the index storage.</p>
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <span class="tsd-signature-type">string</span></span></li><li><span><span class="tsd-kind-parameter">key</span>: <span class="tsd-signature-type">string</span></span></li><li><span><span class="tsd-kind-parameter">value</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L602">src/storage/keyvalue/WrappedIndexedStorage.ts:602</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><a id="getParentRelation" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code><span>get<wbr/>Parent<wbr/>Relation</span><a href="#getParentRelation" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class="tsd-signature tsd-anchor-link"><a id="getParentRelation.getParentRelation-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">get<wbr/>Parent<wbr/>Relation</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#getParentRelation.getParentRelation-1.TType-11">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><a href="../types/IndexRelation.html" class="tsd-signature-type tsd-kind-type-alias">IndexRelation</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">&gt;</span><a href="#getParentRelation.getParentRelation-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Returns the relation where the given type is the child.
Will return <code>undefined</code> for the root type as that one doesn't have a parent.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="getParentRelation.getParentRelation-1.TType-11" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#getParentRelation.getParentRelation-1.TType-11">TType</a></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><a href="../types/IndexRelation.html" class="tsd-signature-type tsd-kind-type-alias">IndexRelation</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L424">src/storage/keyvalue/WrappedIndexedStorage.ts:424</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><a id="getPathRecords" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code><span>get<wbr/>Path<wbr/>Records</span><a href="#getPathRecords" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class="tsd-signature tsd-anchor-link"><a id="getPathRecords.getPathRecords-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">get<wbr/>Path<wbr/>Records</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">obj</span>, <span class="tsd-kind-parameter">path</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">[]</span><a href="#getPathRecords.getPathRecords-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Finds all records that can be found in the given object by following the given path of virtual keys.</p>
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">obj</span>: <a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a></span></li><li><span><span class="tsd-kind-parameter">path</span>: <span class="tsd-signature-symbol">`</span><span class="tsd-signature-type">**</span><span class="tsd-signature-symbol">${</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">}</span><span class="tsd-signature-type">**</span><span class="tsd-signature-symbol">`</span><span class="tsd-signature-symbol">[]</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">[]</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L320">src/storage/keyvalue/WrappedIndexedStorage.ts:320</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><a id="getPathToType" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code><span>get<wbr/>Path<wbr/>To<wbr/>Type</span><a href="#getPathToType" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class="tsd-signature tsd-anchor-link"><a id="getPathToType.getPathToType-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">get<wbr/>Path<wbr/>To<wbr/>Type</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">`</span><span class="tsd-signature-type">**</span><span class="tsd-signature-symbol">${</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">}</span><span class="tsd-signature-type">**</span><span class="tsd-signature-symbol">`</span><span class="tsd-signature-symbol">[]</span><a href="#getPathToType.getPathToType-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Returns the sequence of virtual keys that need to be accessed to reach the given type, starting from the root.</p>
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <span class="tsd-signature-type">string</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-symbol">`</span><span class="tsd-signature-type">**</span><span class="tsd-signature-symbol">${</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">}</span><span class="tsd-signature-type">**</span><span class="tsd-signature-symbol">`</span><span class="tsd-signature-symbol">[]</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L307">src/storage/keyvalue/WrappedIndexedStorage.ts:307</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><a id="getRoot" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code><span>get<wbr/>Root</span><a href="#getRoot" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class="tsd-signature tsd-anchor-link"><a id="getRoot.getRoot-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">get<wbr/>Root</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#getRoot.getRoot-1.TType-12">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">id</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a><span class="tsd-signature-symbol">&gt;</span><a href="#getRoot.getRoot-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Finds the root object that contains the requested type/id combination.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="getRoot.getRoot-1.TType-12" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#getRoot.getRoot-1.TType-12">TType</a></span></li><li><span><span class="tsd-kind-parameter">id</span>: <span class="tsd-signature-type">string</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L286">src/storage/keyvalue/WrappedIndexedStorage.ts:286</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="has" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>has</span><a href="#has" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="has.has-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">has</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#has.has-1.TType-13">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">id</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">&gt;</span><a href="#has.has-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Returns <code>true</code> if the object of the given type with the given identifier exists.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="has.has-1.TType-13" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#has.has-1.TType-13">TType</a></span><div class="tsd-comment tsd-typography"><p>The type of object to get.</p>
</div><div class="tsd-comment tsd-typography"></div></li><li><span><span class="tsd-kind-parameter">id</span>: <span class="tsd-signature-type">string</span></span><div class="tsd-comment tsd-typography"><p>The identifier of that object.</p>
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">&gt;</span></h4><p>Whether this object exists.</p>
<div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/IndexedStorage.html">IndexedStorage</a>.<a href="../interfaces/IndexedStorage.html#has">has</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L133">src/storage/keyvalue/WrappedIndexedStorage.ts:133</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="set" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>set</span><a href="#set" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="set.set-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">set</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#set.set-1.TType-14">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">value</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span><a href="#set.set-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Sets the value of a specific object.
The identifier in the object is used to identify the object.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="set.set-1.TType-14" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#set.set-1.TType-14">TType</a></span><div class="tsd-comment tsd-typography"><p>The type of the object to set.</p>
</div><div class="tsd-comment tsd-typography"></div></li><li><span><span class="tsd-kind-parameter">value</span>: <a href="../types/TypeObject.html" class="tsd-signature-type tsd-kind-type-alias">TypeObject</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#set.set-1.TType-14">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span></span><div class="tsd-comment tsd-typography"><p>The new value for the object.</p>
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/IndexedStorage.html">IndexedStorage</a>.<a href="../interfaces/IndexedStorage.html#set">set</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L187">src/storage/keyvalue/WrappedIndexedStorage.ts:187</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="setField" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>set<wbr/>Field</span><a href="#setField" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="setField.setField-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">set<wbr/>Field</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#setField.setField-1.TType-15">TType</a><span class="tsd-signature-symbol">, </span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#setField.setField-1.TKey">TKey</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">id</span>, <span class="tsd-kind-parameter">key</span>, <span class="tsd-kind-parameter">value</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span><a href="#setField.setField-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Sets the value of one specific field in an object.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="setField.setField-1.TType-15" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li><li><span><a id="setField.setField-1.TKey" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TKey</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#setField.setField-1.TType-15">TType</a></span><div class="tsd-comment tsd-typography"><p>The type of the object to update.</p>
</div><div class="tsd-comment tsd-typography"></div></li><li><span><span class="tsd-kind-parameter">id</span>: <span class="tsd-signature-type">string</span></span><div class="tsd-comment tsd-typography"><p>The identifier of the object to update.</p>
</div><div class="tsd-comment tsd-typography"></div></li><li><span><span class="tsd-kind-parameter">key</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#setField.setField-1.TKey">TKey</a></span><div class="tsd-comment tsd-typography"><p>The key to update.</p>
</div><div class="tsd-comment tsd-typography"></div></li><li><span><span class="tsd-kind-parameter">value</span>: <a href="../types/ValueType.html" class="tsd-signature-type tsd-kind-type-alias">ValueType</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#setField.setField-1.TType-15">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#setField.setField-1.TKey">TKey</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span></span><div class="tsd-comment tsd-typography"><p>The new value for the given key.</p>
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Implementation of <a href="../interfaces/IndexedStorage.html">IndexedStorage</a>.<a href="../interfaces/IndexedStorage.html#setField">setField</a></p><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L192">src/storage/keyvalue/WrappedIndexedStorage.ts:192</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><a id="solveQuery" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code><span>solve<wbr/>Query</span><a href="#solveQuery" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class="tsd-signature tsd-anchor-link"><a id="solveQuery.solveQuery-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">solve<wbr/>Query</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#solveQuery.solveQuery-1.TType-16">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">query</span>, <span class="tsd-kind-parameter">rootIds</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span><a href="#solveQuery.solveQuery-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Finds all objects of the given type matching the query.
The <code>rootIds</code> array can be used to restrict the IDs of root objects to look at,
which is relevant for the recursive calls the function does.</p>
<p>Will throw an error if there is no index that can be used to solve the query.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="solveQuery.solveQuery-1.TType-16" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#solveQuery.solveQuery-1.TType-16">TType</a></span></li><li><span><span class="tsd-kind-parameter">query</span>: <span class="tsd-signature-symbol">{</span><br/><span>    </span><span class="tsd-signature-symbol">[</span><span class="tsd-kind-type-parameter">K</span><span class="tsd-signature-keyword"> in </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">?: </span><a href="../types/ValueType.html" class="tsd-signature-type tsd-kind-type-alias">ValueType</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#solveQuery.solveQuery-1.TType-16">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type tsd-kind-type-parameter">K</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-symbol">(</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#solveQuery.solveQuery-1.TType-16">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type tsd-kind-type-parameter">K</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-symbol">`</span><span class="tsd-signature-type">id:</span><span class="tsd-signature-symbol">${</span><span class="tsd-signature-type tsd-kind-type-parameter">U</span><span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">`</span><br/><span>        </span><span class="tsd-signature-symbol">? </span><span class="tsd-signature-symbol">{</span><br/><span>            </span><span class="tsd-signature-symbol">[</span><span class="tsd-kind-type-parameter">K</span><span class="tsd-signature-keyword"> in </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">?: </span><span class="tsd-signature-symbol">(</span>ValueType&lt;T[U][K]&gt; | (T[U][K] extends `id:${infer U}` ? { [K in &quot;id&quot; | keyof T[U]]?: ValueType&lt;T[U][K]&gt; | (T[U][K] extends `id:${infer U}` ? { [K in &quot;id&quot; | keyof T[U]]?: ValueType&lt;...&gt; | ... 1 more ... | undefined; } : never) | undefined; } : never) | undefined<span class="tsd-signature-symbol">)</span><br/><span>        </span><span class="tsd-signature-symbol">}</span><br/><span>        </span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">never</span><span class="tsd-signature-symbol">)</span><br/><span class="tsd-signature-symbol">}</span></span></li><li><span><code class="tsd-tag">Optional</code><span class="tsd-kind-parameter">rootIds</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L544">src/storage/keyvalue/WrappedIndexedStorage.ts:544</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><a id="toTypeObject" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code><span>to<wbr/>Type<wbr/>Object</span><a href="#toTypeObject" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class="tsd-signature tsd-anchor-link"><a id="toTypeObject.toTypeObject-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">to<wbr/>Type<wbr/>Object</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#toTypeObject.toTypeObject-1.TType-17">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">obj</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../types/TypeObject.html" class="tsd-signature-type tsd-kind-type-alias">TypeObject</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#toTypeObject.toTypeObject-1.TType-17">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span><a href="#toTypeObject.toTypeObject-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Converts a <a href="../types/VirtualObject.html" class="tsd-kind-type-alias">VirtualObject</a> into a <a href="../types/TypeObject.html" class="tsd-kind-type-alias">TypeObject</a>.
To be used when outputting results.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="toTypeObject.toTypeObject-1.TType-17" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#toTypeObject.toTypeObject-1.TType-17">TType</a></span></li><li><span><span class="tsd-kind-parameter">obj</span>: <a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a></span></li></ul></div><h4 class="tsd-returns-title">Returns <a href="../types/TypeObject.html" class="tsd-signature-type tsd-kind-type-alias">TypeObject</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#toTypeObject.toTypeObject-1.TType-17">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L264">src/storage/keyvalue/WrappedIndexedStorage.ts:264</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><a id="updateDeepTypeIndex" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code><span>update<wbr/>Deep<wbr/>Type<wbr/>Index</span><a href="#updateDeepTypeIndex" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class="tsd-signature tsd-anchor-link"><a id="updateDeepTypeIndex.updateDeepTypeIndex-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">update<wbr/>Deep<wbr/>Type<wbr/>Index</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#updateDeepTypeIndex.updateDeepTypeIndex-1.TType-18">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">rootId</span>, <span class="tsd-kind-parameter">oldObj</span>, <span class="tsd-kind-parameter">newObj</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span><a href="#updateDeepTypeIndex.updateDeepTypeIndex-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Update all indexes for an object of the given type, and all its children.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="updateDeepTypeIndex.updateDeepTypeIndex-1.TType-18" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#updateDeepTypeIndex.updateDeepTypeIndex-1.TType-18">TType</a></span></li><li><span><span class="tsd-kind-parameter">rootId</span>: <span class="tsd-signature-type">string</span></span></li><li><span><span class="tsd-kind-parameter">oldObj</span>: <a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a></span></li><li><span><code class="tsd-tag">Optional</code><span class="tsd-kind-parameter">newObj</span>: <a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L609">src/storage/keyvalue/WrappedIndexedStorage.ts:609</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><a id="updateKeyIndex" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code><span>update<wbr/>Key<wbr/>Index</span><a href="#updateKeyIndex" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class="tsd-signature tsd-anchor-link"><a id="updateKeyIndex.updateKeyIndex-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">update<wbr/>Key<wbr/>Index</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">key</span>, <span class="tsd-kind-parameter">value</span>, <span class="tsd-kind-parameter">rootId</span>, <span class="tsd-kind-parameter">add</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span><a href="#updateKeyIndex.updateKeyIndex-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Updates the index for a specific key of an object of the given type.</p>
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <span class="tsd-signature-type">string</span></span></li><li><span><span class="tsd-kind-parameter">key</span>: <span class="tsd-signature-type">string</span></span></li><li><span><span class="tsd-kind-parameter">value</span>: <span class="tsd-signature-type">string</span></span></li><li><span><span class="tsd-kind-parameter">rootId</span>: <span class="tsd-signature-type">string</span></span></li><li><span><span class="tsd-kind-parameter">add</span>: <span class="tsd-signature-type">boolean</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L664">src/storage/keyvalue/WrappedIndexedStorage.ts:664</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><a id="updateTypeIndex" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code><span>update<wbr/>Type<wbr/>Index</span><a href="#updateTypeIndex" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class="tsd-signature tsd-anchor-link"><a id="updateTypeIndex.updateTypeIndex-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">update<wbr/>Type<wbr/>Index</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#updateTypeIndex.updateTypeIndex-1.TType-19">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">rootId</span>, <span class="tsd-kind-parameter">oldObj</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-kind-parameter">newObj</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span><a href="#updateTypeIndex.updateTypeIndex-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Updates all indexes for an object of the given type.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="updateTypeIndex.updateTypeIndex-1.TType-19" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#updateTypeIndex.updateTypeIndex-1.TType-19">TType</a></span></li><li><span><span class="tsd-kind-parameter">rootId</span>: <span class="tsd-signature-type">string</span></span></li><li><span><code class="tsd-tag">Optional</code><span class="tsd-kind-parameter">oldObj</span>: <a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a></span></li><li><span><code class="tsd-tag">Optional</code><span class="tsd-kind-parameter">newObj</span>: <a href="../types/VirtualObject.html" class="tsd-signature-type tsd-kind-type-alias">VirtualObject</a></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L633">src/storage/keyvalue/WrappedIndexedStorage.ts:633</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><a id="updateValue" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code><span>update<wbr/>Value</span><a href="#updateValue" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class="tsd-signature tsd-anchor-link"><a id="updateValue.updateValue-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">update<wbr/>Value</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#updateValue.updateValue-1.TType-20">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">value</span>, <span class="tsd-kind-parameter">replace</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span><a href="#updateValue.updateValue-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Replaces an object of the given type.
The identifier in the value is used to determine which object.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="updateValue.updateValue-1.TType-20" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#updateValue.updateValue-1.TType-20">TType</a></span></li><li><span><span class="tsd-kind-parameter">value</span>: <a href="../types/TypeObject.html" class="tsd-signature-type tsd-kind-type-alias">TypeObject</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#updateValue.updateValue-1.TType-20">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span></span></li><li><span><span class="tsd-kind-parameter">replace</span>: <span class="tsd-signature-type">true</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L362">src/storage/keyvalue/WrappedIndexedStorage.ts:362</a></li></ul></aside></li><li class="tsd-signature tsd-anchor-link"><a id="updateValue.updateValue-2" class="tsd-anchor"></a><span class="tsd-kind-call-signature">update<wbr/>Value</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#updateValue.updateValue-2.TType-21">TType</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span>, <span class="tsd-kind-parameter">partial</span>, <span class="tsd-kind-parameter">replace</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span><a href="#updateValue.updateValue-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Replaces part of an object of the given type with the given partial value.
The identifier in the value is used to determine which object.</p>
</div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="updateValue.updateValue-2.TType-21" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">TType</span><span class="tsd-signature-keyword"> extends </span><span class="tsd-signature-type">string</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#updateValue.updateValue-2.TType-21">TType</a></span></li><li><span><span class="tsd-kind-parameter">partial</span>: <span class="tsd-signature-type">Partial</span><span class="tsd-signature-symbol">&lt;</span><a href="../types/TypeObject.html" class="tsd-signature-type tsd-kind-type-alias">TypeObject</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#constructor.new_WrappedIndexedStorage.T-1">T</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="WrappedIndexedStorage.html#updateValue.updateValue-2.TType-21">TType</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> &amp; </span><span class="tsd-signature-symbol">{ </span><br/><span>    </span><span class="tsd-kind-property">id</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">; </span><br/><span class="tsd-signature-symbol">}</span></span></li><li><span><span class="tsd-kind-parameter">replace</span>: <span class="tsd-signature-type">false</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L369">src/storage/keyvalue/WrappedIndexedStorage.ts:369</a></li></ul></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><a id="validateDefinition" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Protected</code><span>validate<wbr/>Definition</span><a href="#validateDefinition" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class="tsd-signature tsd-anchor-link"><a id="validateDefinition.validateDefinition-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">validate<wbr/>Definition</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">type</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#validateDefinition.validateDefinition-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Makes sure the defined types fulfill all the requirements necessary for types on this storage.
Will throw an error if this is not the case.
This should be called before doing any data interactions.
Stores success in a variable so future calls are instantaneous.</p>
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">type</span>: <span class="tsd-signature-type">string</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/CommunitySolidServer/CommunitySolidServer/blob/4599bf413e0ca08725d22b5e01fe43e97ef7d714/src/storage/keyvalue/WrappedIndexedStorage.ts#L434">src/storage/keyvalue/WrappedIndexedStorage.ts:434</a></li></ul></aside></li></ul></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="tsd-otp-Constructors"><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Constructors</summary><div><a href="#constructor" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a></div></details><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="tsd-otp-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Properties</summary><div><a href="#logger" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>logger</span></a></div></details><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="tsd-otp-Accessors"><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Accessors</summary><div><a href="#rootType" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>root<wbr/>Type</span></a></div></details><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="tsd-otp-Methods"><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Methods</summary><div><a href="#create" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>create</span></a><a href="#createIndex" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>create<wbr/>Index</span></a><a href="#defineType" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>define<wbr/>Type</span></a><a href="#delete" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>delete</span></a><a href="#entries" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>entries</span></a><a href="#find" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>find</span></a><a href="#findIds" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>find<wbr/>Ids</span></a><a href="#findIndexedRoots" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>find<wbr/>Indexed<wbr/>Roots</span></a><a href="#get" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get</span></a><a href="#getChildObjects" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Child<wbr/>Objects</span></a><a href="#getChildRelations" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Child<wbr/>Relations</span></a><a href="#getContainingRecord" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Containing<wbr/>Record</span></a><a href="#getIndexKey" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Index<wbr/>Key</span></a><a href="#getParentRelation" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Parent<wbr/>Relation</span></a><a href="#getPathRecords" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Path<wbr/>Records</span></a><a href="#getPathToType" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Path<wbr/>To<wbr/>Type</span></a><a href="#getRoot" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Root</span></a><a href="#has" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>has</span></a><a href="#set" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>set</span></a><a href="#setField" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>set<wbr/>Field</span></a><a href="#solveQuery" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>solve<wbr/>Query</span></a><a href="#toTypeObject" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>to<wbr/>Type<wbr/>Object</span></a><a href="#updateDeepTypeIndex" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>update<wbr/>Deep<wbr/>Type<wbr/>Index</span></a><a href="#updateKeyIndex" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>update<wbr/>Key<wbr/>Index</span></a><a href="#updateTypeIndex" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>update<wbr/>Type<wbr/>Index</span></a><a href="#updateValue" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>update<wbr/>Value</span></a><a href="#validateDefinition" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>validate<wbr/>Definition</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1"></use></svg><span>Community Solid Server - v7.1.1</span></a><ul class="tsd-small-nested-navigation" id="tsd-nav-container" data-base=".."><li>Loading...</li></ul></nav></div></div></div><footer></footer><div class="overlay"></div></body></html>