paris/docs/classes/readonlyrepository.html

848 строки
53 KiB
HTML

<!doctype html>
<html class="default no-js">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>ReadonlyRepository | Paris</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../assets/css/main.css">
</head>
<body>
<header>
<div class="tsd-page-toolbar">
<div class="container">
<div class="table-wrap">
<div class="table-cell" id="tsd-search" data-index="../assets/js/search.js" data-base="..">
<div class="field">
<label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
<input id="tsd-search-field" type="text" />
</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">Paris</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
<a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
<div class="tsd-filter-group">
<div class="tsd-select" id="tsd-filter-visibility">
<span class="tsd-select-label">All</span>
<ul class="tsd-select-list">
<li data-value="public">Public</li>
<li data-value="protected">Public/Protected</li>
<li data-value="private" class="selected">All</li>
</ul>
</div>
<input type="checkbox" id="tsd-filter-inherited" checked />
<label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
<input type="checkbox" id="tsd-filter-only-exported" />
<label class="tsd-widget" for="tsd-filter-only-exported">Only exported</label>
</div>
</div>
<a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
</div>
</div>
</div>
</div>
<div class="tsd-page-title">
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../globals.html">Globals</a>
</li>
<li>
<a href="readonlyrepository.html">ReadonlyRepository</a>
</li>
</ul>
<h1>Class ReadonlyRepository&lt;TEntity, TRawData&gt;</h1>
</div>
</div>
</header>
<div class="container container-main">
<div class="row">
<div class="col-8 col-content">
<section class="tsd-panel tsd-comment">
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>A Repository is a service through which all of an Entity&#39;s data is fetched, cached and saved back to the backend.</p>
</div>
<p><code>ReadonlyRepository</code> is the base class for all Repositories, and the class used for Repositories that are readonly.</p>
</div>
</section>
<section class="tsd-panel tsd-type-parameters">
<h3>Type parameters</h3>
<ul class="tsd-type-parameters">
<li>
<h4>TEntity<span class="tsd-signature-symbol">: </span><a href="modelbase.html" class="tsd-signature-type">ModelBase</a></h4>
</li>
<li>
<h4>TRawData</h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-hierarchy">
<h3>Hierarchy</h3>
<ul class="tsd-hierarchy">
<li>
<span class="target">ReadonlyRepository</span>
<ul class="tsd-hierarchy">
<li>
<a href="relationshiprepository.html" class="tsd-signature-type">RelationshipRepository</a>
</li>
<li>
<a href="repository.html" class="tsd-signature-type">Repository</a>
</li>
</ul>
</li>
</ul>
</section>
<section class="tsd-panel">
<h3>Implements</h3>
<ul class="tsd-hierarchy">
<li><a href="../interfaces/ireadonlyrepository.html" class="tsd-signature-type">IReadonlyRepository</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
</section>
<section class="tsd-panel-group tsd-index-group">
<h2>Index</h2>
<section class="tsd-panel tsd-index-panel">
<div class="tsd-index-content">
<section class="tsd-index-section ">
<h3>Constructors</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-constructor tsd-parent-kind-class"><a href="readonlyrepository.html#constructor" class="tsd-kind-icon">constructor</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Properties</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-property tsd-parent-kind-class"><a href="readonlyrepository.html#entityconstructor" class="tsd-kind-icon">entity<wbr>Constructor</a></li>
<li class="tsd-kind-property tsd-parent-kind-class"><a href="readonlyrepository.html#error_" class="tsd-kind-icon">error$</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Accessors</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="readonlyrepository.html#allitems_" class="tsd-kind-icon">all<wbr>Items$</a></li>
<li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="readonlyrepository.html#entity" class="tsd-kind-icon">entity</a></li>
<li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="readonlyrepository.html#modelconfig" class="tsd-kind-icon">model<wbr>Config</a></li>
<li class="tsd-kind-get-signature tsd-parent-kind-class"><a href="readonlyrepository.html#values" class="tsd-kind-icon">values</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Methods</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-method tsd-parent-kind-class"><a href="readonlyrepository.html#addcustomheaders" class="tsd-kind-icon">add<wbr>Custom<wbr>Headers</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="readonlyrepository.html#clearallvalues" class="tsd-kind-icon">clear<wbr>All<wbr>Values</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="readonlyrepository.html#clearcache" class="tsd-kind-icon">clear<wbr>Cache</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="readonlyrepository.html#createitem" class="tsd-kind-icon">create<wbr>Item</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="readonlyrepository.html#createnewitem" class="tsd-kind-icon">create<wbr>New<wbr>Item</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="readonlyrepository.html#getendpointname" class="tsd-kind-icon">get<wbr>Endpoint<wbr>Name</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="readonlyrepository.html#getendpointurl" class="tsd-kind-icon">get<wbr>Endpoint<wbr>Url</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="readonlyrepository.html#getitembyid" class="tsd-kind-icon">get<wbr>Item<wbr>ById</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="readonlyrepository.html#getqueryhttpoptions" class="tsd-kind-icon">get<wbr>Query<wbr>Http<wbr>Options</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="readonlyrepository.html#query" class="tsd-kind-icon">query</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="readonlyrepository.html#queryitem" class="tsd-kind-icon">query<wbr>Item</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="readonlyrepository.html#serializeitem" class="tsd-kind-icon">serialize<wbr>Item</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-static"><a href="readonlyrepository.html#validateitem" class="tsd-kind-icon">validate<wbr>Item</a></li>
</ul>
</section>
</div>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Constructors</h2>
<section class="tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class">
<a name="constructor" class="tsd-anchor"></a>
<h3>constructor</h3>
<ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">new <wbr>Readonly<wbr>Repository<span class="tsd-signature-symbol">(</span>entityConstructor<span class="tsd-signature-symbol">: </span><a href="../interfaces/dataentitytype.html" class="tsd-signature-type">DataEntityType</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">TRawData</span><span class="tsd-signature-symbol">&gt;</span>, paris<span class="tsd-signature-symbol">: </span><a href="paris.html" class="tsd-signature-type">Paris</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="readonlyrepository.html" class="tsd-signature-type">ReadonlyRepository</a></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L34">api/repository/readonly-repository.ts:34</a></li>
</ul>
</aside>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>entityConstructor: <a href="../interfaces/dataentitytype.html" class="tsd-signature-type">DataEntityType</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">TRawData</span><span class="tsd-signature-symbol">&gt;</span></h5>
</li>
<li>
<h5>paris: <a href="paris.html" class="tsd-signature-type">Paris</a></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="readonlyrepository.html" class="tsd-signature-type">ReadonlyRepository</a></h4>
</li>
</ul>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Properties</h2>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
<a name="entityconstructor" class="tsd-anchor"></a>
<h3>entity<wbr>Constructor</h3>
<div class="tsd-signature tsd-kind-icon">entity<wbr>Constructor<span class="tsd-signature-symbol">:</span> <a href="../interfaces/dataentitytype.html" class="tsd-signature-type">DataEntityType</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">TRawData</span><span class="tsd-signature-symbol">&gt;</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L36">api/repository/readonly-repository.ts:36</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
<a name="error_" class="tsd-anchor"></a>
<h3>error$</h3>
<div class="tsd-signature tsd-kind-icon">error$<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Observable</span><span class="tsd-signature-symbol">&lt;</span><a href="../interfaces/entityerrorevent.html" class="tsd-signature-type">EntityErrorEvent</a><span class="tsd-signature-symbol">&gt;</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L32">api/repository/readonly-repository.ts:32</a></li>
</ul>
</aside>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Accessors</h2>
<section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class">
<a name="allitems_" class="tsd-anchor"></a>
<h3>all<wbr>Items$</h3>
<ul class="tsd-signatures tsd-kind-get-signature tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">get</span> allItems$<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Observable</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Array</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L79">api/repository/readonly-repository.ts:79</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>An Observable for all the items of this entity. If the Entity has already loaded all possible items (if <code>loadAll</code> is set to <code>true</code>, for example), those items are returned.
Otherwise, a query with no DataQuery will be performed to the backend and the data will be fetched.</p>
</div>
</div>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Observable</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Array</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class">
<a name="entity" class="tsd-anchor"></a>
<h3>entity</h3>
<ul class="tsd-signatures tsd-kind-get-signature tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">get</span> entity<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../interfaces/entityconfig.html" class="tsd-signature-type">EntityConfig</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">TRawData</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L58">api/repository/readonly-repository.ts:58</a></li>
</ul>
</aside>
<h4 class="tsd-returns-title">Returns <a href="../interfaces/entityconfig.html" class="tsd-signature-type">EntityConfig</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">TRawData</span><span class="tsd-signature-symbol">&gt;</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class">
<a name="modelconfig" class="tsd-anchor"></a>
<h3>model<wbr>Config</h3>
<ul class="tsd-signatures tsd-kind-get-signature tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">get</span> modelConfig<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="entityconfigbase.html" class="tsd-signature-type">EntityConfigBase</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">TRawData</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L62">api/repository/readonly-repository.ts:62</a></li>
</ul>
</aside>
<h4 class="tsd-returns-title">Returns <a href="entityconfigbase.html" class="tsd-signature-type">EntityConfigBase</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">TRawData</span><span class="tsd-signature-symbol">&gt;</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class">
<a name="values" class="tsd-anchor"></a>
<h3>values</h3>
<ul class="tsd-signatures tsd-kind-get-signature tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">get</span> values<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Array</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L70">api/repository/readonly-repository.ts:70</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>All the hard-coded values of an Entity, as specified through the <code>values</code> configuration.</p>
</div>
</div>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Array</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">&gt;</span></h4>
</li>
</ul>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Methods</h2>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="addcustomheaders" class="tsd-anchor"></a>
<h3>add<wbr>Custom<wbr>Headers</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">add<wbr>Custom<wbr>Headers<span class="tsd-signature-symbol">(</span>data<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</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><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L325">api/repository/readonly-repository.ts:325</a></li>
</ul>
</aside>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>data: <span class="tsd-signature-type">any</span></h5>
</li>
</ul>
<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><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">&gt;</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="clearallvalues" class="tsd-anchor"></a>
<h3>clear<wbr>All<wbr>Values</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">clear<wbr>All<wbr>Values<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L262">api/repository/readonly-repository.ts:262</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Clears the cached values in the Repository, if they were set as a result of using allItems$ or <code>loadAll: true</code>.</p>
</div>
</div>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="clearcache" class="tsd-anchor"></a>
<h3>clear<wbr>Cache</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">clear<wbr>Cache<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L255">api/repository/readonly-repository.ts:255</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Clears all cached data in this Repository</p>
</div>
</div>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="createitem" class="tsd-anchor"></a>
<h3>create<wbr>Item</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">create<wbr>Item<span class="tsd-signature-symbol">(</span>rawData<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">TRawData</span>, options<span class="tsd-signature-symbol">?: </span><a href="../interfaces/dataoptions.html" class="tsd-signature-type">DataOptions</a>, query<span class="tsd-signature-symbol">?: </span><a href="../interfaces/dataquery.html" class="tsd-signature-type">DataQuery</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Observable</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L161">api/repository/readonly-repository.ts:161</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Creates a full model of this Repository&#39;s Entity. Any sub-models that need to be fetched from backend will be fetched (if options.availability === DataAvailability.deep).
This method is used internally when modeling entities and value objects, but may be used externally as well, in case an item should be created programmatically from raw data.</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>rawData: <span class="tsd-signature-type">TRawData</span></h5>
<div class="tsd-comment tsd-typography">
<p>The raw data for the entity, as it arrives from backend</p>
</div>
</li>
<li>
<h5><span class="tsd-flag ts-flagDefault value">Default value</span> options: <a href="../interfaces/dataoptions.html" class="tsd-signature-type">DataOptions</a><span class="tsd-signature-symbol"> =&nbsp;{ allowCache: true, availability: DataAvailability.available }</span></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> query: <a href="../interfaces/dataquery.html" class="tsd-signature-type">DataQuery</a></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Observable</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">&gt;</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="createnewitem" class="tsd-anchor"></a>
<h3>create<wbr>New<wbr>Item</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">create<wbr>New<wbr>Item<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">TEntity</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L141">api/repository/readonly-repository.ts:141</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Creates a new instance of the Repository&#39;s entity.
All fields will be undefined, except those that have defaultValue or those that are arrays, which will have an empty array as value.</p>
</div>
</div>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">TEntity</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="getendpointname" class="tsd-anchor"></a>
<h3>get<wbr>Endpoint<wbr>Name</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">get<wbr>Endpoint<wbr>Name<span class="tsd-signature-symbol">(</span>query<span class="tsd-signature-symbol">?: </span><a href="../interfaces/dataquery.html" class="tsd-signature-type">DataQuery</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L101">api/repository/readonly-repository.ts:101</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Returns the base URL for this Repository&#39;s API calls (not including base URL - the domain)</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> query: <a href="../interfaces/dataquery.html" class="tsd-signature-type">DataQuery</a></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="getendpointurl" class="tsd-anchor"></a>
<h3>get<wbr>Endpoint<wbr>Url</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">get<wbr>Endpoint<wbr>Url<span class="tsd-signature-symbol">(</span>query<span class="tsd-signature-symbol">?: </span><a href="../interfaces/dataquery.html" class="tsd-signature-type">DataQuery</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L110">api/repository/readonly-repository.ts:110</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Returns the full URL for an API call</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> query: <a href="../interfaces/dataquery.html" class="tsd-signature-type">DataQuery</a></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="getitembyid" class="tsd-anchor"></a>
<h3>get<wbr>Item<wbr>ById</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">get<wbr>Item<wbr>ById<span class="tsd-signature-symbol">(</span>itemId<span class="tsd-signature-symbol">: </span><a href="../globals.html#entityid" class="tsd-signature-type">EntityId</a>, options<span class="tsd-signature-symbol">?: </span><a href="../interfaces/dataoptions.html" class="tsd-signature-type">DataOptions</a>, params<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">object</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Observable</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L273">api/repository/readonly-repository.ts:273</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Fetches an item from backend, for the specified ID, or from cache, if it&#39;s available.</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>itemId: <a href="../globals.html#entityid" class="tsd-signature-type">EntityId</a></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagDefault value">Default value</span> options: <a href="../interfaces/dataoptions.html" class="tsd-signature-type">DataOptions</a><span class="tsd-signature-symbol"> =&nbsp;defaultDataOptions</span></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> params: <span class="tsd-signature-type">object</span></h5>
<ul class="tsd-parameters">
<li class="tsd-parameter-index-signature">
<h5><span class="tsd-signature-symbol">[</span>index: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]: </span><span class="tsd-signature-type">any</span></h5>
</li>
</ul>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Observable</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">&gt;</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="getqueryhttpoptions" class="tsd-anchor"></a>
<h3>get<wbr>Query<wbr>Http<wbr>Options</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">get<wbr>Query<wbr>Http<wbr>Options<span class="tsd-signature-symbol">(</span>query<span class="tsd-signature-symbol">: </span><a href="../interfaces/dataquery.html" class="tsd-signature-type">DataQuery</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../interfaces/httpoptions.html" class="tsd-signature-type">HttpOptions</a></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L235">api/repository/readonly-repository.ts:235</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Returns the HttpOptions for the specified DataQuery.
Uses the entity config&#39;s <code>parseDataQuery</code> configuration, if available, or otherwise the <code>queryToHttpOptions</code> function.
If the entity config has <code>fixedData</code> set, the fixed data will be added to the HttpOptions params.</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>query: <a href="../interfaces/dataquery.html" class="tsd-signature-type">DataQuery</a></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="../interfaces/httpoptions.html" class="tsd-signature-type">HttpOptions</a></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="query" class="tsd-anchor"></a>
<h3>query</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">query<span class="tsd-signature-symbol">(</span>query<span class="tsd-signature-symbol">?: </span><a href="../interfaces/dataquery.html" class="tsd-signature-type">DataQuery</a>, dataOptions<span class="tsd-signature-symbol">?: </span><a href="../interfaces/dataoptions.html" class="tsd-signature-type">DataOptions</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Observable</span><span class="tsd-signature-symbol">&lt;</span><a href="../interfaces/dataset.html" class="tsd-signature-type">DataSet</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L184">api/repository/readonly-repository.ts:184</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Gets multiple items from backend.
The backend may add paging information, such as count, page, etc, so a DataSet object is returned rather than just an Array.</p>
</div>
<dl class="tsd-comment-tags">
<dt>example</dt>
<dd><p><caption>Get all Todo items</caption></p>
<pre><code class="lang-typescript">repository.query()
.subscribe(<span class="hljs-function">(<span class="hljs-params">todoItems:DataSet&lt;TodoItem&gt;</span>) =&gt;</span> <span class="hljs-built_in">console</span>.log(<span class="hljs-string">'Current items: '</span>, todoItems.items));
</code></pre>
</dd>
<dt>example</dt>
<dd><p><caption>Get all Todo items, sorted by name</caption></p>
<pre><code class="lang-typescript">repository.query({ sortBy: { field: <span class="hljs-string">'name'</span> }})
.subscribe(<span class="hljs-function">(<span class="hljs-params">todoItems:DataSet&lt;TodoItem&gt;</span>) =&gt;</span> <span class="hljs-built_in">console</span>.log(<span class="hljs-string">'Items by name: '</span>, todoItems.items));
</code></pre>
</dd>
</dl>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> query: <a href="../interfaces/dataquery.html" class="tsd-signature-type">DataQuery</a></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagDefault value">Default value</span> dataOptions: <a href="../interfaces/dataoptions.html" class="tsd-signature-type">DataOptions</a><span class="tsd-signature-symbol"> =&nbsp;defaultDataOptions</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Observable</span><span class="tsd-signature-symbol">&lt;</span><a href="../interfaces/dataset.html" class="tsd-signature-type">DataSet</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="queryitem" class="tsd-anchor"></a>
<h3>query<wbr>Item</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">query<wbr>Item<span class="tsd-signature-symbol">(</span>query<span class="tsd-signature-symbol">: </span><a href="../interfaces/dataquery.html" class="tsd-signature-type">DataQuery</a>, dataOptions<span class="tsd-signature-symbol">?: </span><a href="../interfaces/dataoptions.html" class="tsd-signature-type">DataOptions</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Observable</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L198">api/repository/readonly-repository.ts:198</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Same as {@link ReadonlyRepository#query|query}, but returns a single item rather than a {DataSet}.
Useful for when we require to fetch a single model from backend, but it&#39;s either a ValueObject (so we can&#39;t refer to it by ID) or it&#39;s fetched by a more complex data query.</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>query: <a href="../interfaces/dataquery.html" class="tsd-signature-type">DataQuery</a></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagDefault value">Default value</span> dataOptions: <a href="../interfaces/dataoptions.html" class="tsd-signature-type">DataOptions</a><span class="tsd-signature-symbol"> =&nbsp;defaultDataOptions</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Observable</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">&gt;</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="serializeitem" class="tsd-anchor"></a>
<h3>serialize<wbr>Item</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">serialize<wbr>Item<span class="tsd-signature-symbol">(</span>item<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Partial</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">&gt;</span>, serializationData<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">TRawData</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L337">api/repository/readonly-repository.ts:337</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Creates a JSON object that can be saved to server, with the reverse logic of getItemModelData</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>item: <span class="tsd-signature-type">Partial</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">&gt;</span></h5>
<div class="tsd-comment tsd-typography">
</div>
</li>
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> serializationData: <span class="tsd-signature-type">any</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">TRawData</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-static">
<a name="validateitem" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagStatic">Static</span> validate<wbr>Item</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-static">
<li class="tsd-signature tsd-kind-icon">validate<wbr>Item&lt;TEntity, TRawData&gt;<span class="tsd-signature-symbol">(</span>item<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">__type</span>, entity<span class="tsd-signature-symbol">: </span><a href="../interfaces/modelconfig.html" class="tsd-signature-type">ModelConfig</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">TRawData</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/microsoft/paris/blob/87d6e18/lib/api/repository/readonly-repository.ts#L350">api/repository/readonly-repository.ts:350</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Validates that the specified item is valid, according to the requirements of the entity (or value object) it belongs to.
Meaning, that it can be used as data for creating an instance of T.</p>
</div>
</div>
<h4 class="tsd-type-parameters-title">Type parameters</h4>
<ul class="tsd-type-parameters">
<li>
<h4>TEntity<span class="tsd-signature-symbol">: </span><a href="modelbase.html" class="tsd-signature-type">ModelBase</a></h4>
</li>
<li>
<h4>TRawData</h4>
</li>
</ul>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>item: <span class="tsd-signature-type">__type</span></h5>
</li>
<li>
<h5>entity: <a href="../interfaces/modelconfig.html" class="tsd-signature-type">ModelConfig</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">TEntity</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">TRawData</span><span class="tsd-signature-symbol">&gt;</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4>
</li>
</ul>
</section>
</section>
</div>
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
<nav class="tsd-navigation primary">
<ul>
<li class="globals ">
<a href="../globals.html"><em>Globals</em></a>
</li>
</ul>
</nav>
<nav class="tsd-navigation secondary menu-sticky">
<ul class="before-current">
</ul>
<ul class="current">
<li class="current tsd-kind-class tsd-has-type-parameter">
<a href="readonlyrepository.html" class="tsd-kind-icon">Readonly<wbr>Repository</a>
<ul>
<li class=" tsd-kind-constructor tsd-parent-kind-class">
<a href="readonlyrepository.html#constructor" class="tsd-kind-icon">constructor</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-class">
<a href="readonlyrepository.html#entityconstructor" class="tsd-kind-icon">entity<wbr>Constructor</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-class">
<a href="readonlyrepository.html#error_" class="tsd-kind-icon">error$</a>
</li>
<li class=" tsd-kind-get-signature tsd-parent-kind-class">
<a href="readonlyrepository.html#allitems_" class="tsd-kind-icon">all<wbr>Items$</a>
</li>
<li class=" tsd-kind-get-signature tsd-parent-kind-class">
<a href="readonlyrepository.html#entity" class="tsd-kind-icon">entity</a>
</li>
<li class=" tsd-kind-get-signature tsd-parent-kind-class">
<a href="readonlyrepository.html#modelconfig" class="tsd-kind-icon">model<wbr>Config</a>
</li>
<li class=" tsd-kind-get-signature tsd-parent-kind-class">
<a href="readonlyrepository.html#values" class="tsd-kind-icon">values</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="readonlyrepository.html#addcustomheaders" class="tsd-kind-icon">add<wbr>Custom<wbr>Headers</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="readonlyrepository.html#clearallvalues" class="tsd-kind-icon">clear<wbr>All<wbr>Values</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="readonlyrepository.html#clearcache" class="tsd-kind-icon">clear<wbr>Cache</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="readonlyrepository.html#createitem" class="tsd-kind-icon">create<wbr>Item</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="readonlyrepository.html#createnewitem" class="tsd-kind-icon">create<wbr>New<wbr>Item</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="readonlyrepository.html#getendpointname" class="tsd-kind-icon">get<wbr>Endpoint<wbr>Name</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="readonlyrepository.html#getendpointurl" class="tsd-kind-icon">get<wbr>Endpoint<wbr>Url</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="readonlyrepository.html#getitembyid" class="tsd-kind-icon">get<wbr>Item<wbr>ById</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="readonlyrepository.html#getqueryhttpoptions" class="tsd-kind-icon">get<wbr>Query<wbr>Http<wbr>Options</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="readonlyrepository.html#query" class="tsd-kind-icon">query</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="readonlyrepository.html#queryitem" class="tsd-kind-icon">query<wbr>Item</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="readonlyrepository.html#serializeitem" class="tsd-kind-icon">serialize<wbr>Item</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-static">
<a href="readonlyrepository.html#validateitem" class="tsd-kind-icon">validate<wbr>Item</a>
</li>
</ul>
</li>
</ul>
<ul class="after-current">
</ul>
</nav>
</div>
</div>
</div>
<footer class="with-border-bottom">
<div class="container">
<h2>Legend</h2>
<div class="tsd-legend-group">
<ul class="tsd-legend">
<li class="tsd-kind-module"><span class="tsd-kind-icon">Module</span></li>
<li class="tsd-kind-object-literal"><span class="tsd-kind-icon">Object literal</span></li>
<li class="tsd-kind-variable"><span class="tsd-kind-icon">Variable</span></li>
<li class="tsd-kind-function"><span class="tsd-kind-icon">Function</span></li>
<li class="tsd-kind-function tsd-has-type-parameter"><span class="tsd-kind-icon">Function with type parameter</span></li>
<li class="tsd-kind-index-signature"><span class="tsd-kind-icon">Index signature</span></li>
<li class="tsd-kind-type-alias"><span class="tsd-kind-icon">Type alias</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-enum"><span class="tsd-kind-icon">Enumeration</span></li>
<li class="tsd-kind-enum-member"><span class="tsd-kind-icon">Enumeration member</span></li>
<li class="tsd-kind-property tsd-parent-kind-enum"><span class="tsd-kind-icon">Property</span></li>
<li class="tsd-kind-method tsd-parent-kind-enum"><span class="tsd-kind-icon">Method</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-interface"><span class="tsd-kind-icon">Interface</span></li>
<li class="tsd-kind-interface tsd-has-type-parameter"><span class="tsd-kind-icon">Interface with type parameter</span></li>
<li class="tsd-kind-constructor tsd-parent-kind-interface"><span class="tsd-kind-icon">Constructor</span></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li>
<li class="tsd-kind-index-signature tsd-parent-kind-interface"><span class="tsd-kind-icon">Index signature</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-class"><span class="tsd-kind-icon">Class</span></li>
<li class="tsd-kind-class tsd-has-type-parameter"><span class="tsd-kind-icon">Class with type parameter</span></li>
<li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li>
<li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li>
<li class="tsd-kind-accessor tsd-parent-kind-class"><span class="tsd-kind-icon">Accessor</span></li>
<li class="tsd-kind-index-signature tsd-parent-kind-class"><span class="tsd-kind-icon">Index signature</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-constructor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited constructor</span></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited method</span></li>
<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited accessor</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected method</span></li>
<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected accessor</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private method</span></li>
<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private accessor</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static property</span></li>
<li class="tsd-kind-call-signature tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static method</span></li>
</ul>
</div>
</div>
</footer>
<div class="container tsd-generator">
<p>Generated using <a href="http://typedoc.org/" target="_blank">TypeDoc</a></p>
</div>
<div class="overlay"></div>
<script src="../assets/js/main.js"></script>
<script>if (location.protocol == 'file:') document.write('<script src="../assets/js/search.js"><' + '/script>');</script>
</body>
</html>