2023-03-20 20:28:40 -07:00
<!DOCTYPE html> < html class = "default" > < head > < meta charSet = "utf-8" / > < meta http-equiv = "x-ua-compatible" content = "IE=edge" / > < title > PoolGraphBuilder | @orca-so/whirlpools-sdk< / title > < meta name = "description" content = "Documentation for @orca-so/whirlpools-sdk" / > < meta name = "viewport" content = "width=device-width, initial-scale=1" / > < link rel = "stylesheet" href = "../assets/style.css" / > < link rel = "stylesheet" href = "../assets/highlight.css" / > < script async src = "../assets/search.js" id = "search-script" > < / script > < / head > < body > < script > document . body . classList . add ( localStorage . getItem ( "tsd-theme" ) || "os" ) < / script > < header > < div class = "tsd-page-toolbar" > < div class = "container" > < div class = "table-wrap" > < div class = "table-cell" id = "tsd-search" data-base = ".." > < div class = "field" > < label for = "tsd-search-field" class = "tsd-widget search no-caption" > Search< / label > < input type = "text" id = "tsd-search-field" / > < / 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" > @orca-so/whirlpools-sdk< / 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-externals" checked / > < label class = "tsd-widget" for = "tsd-filter-externals" > Externals< / 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 = "../modules.html" > @orca-so/whirlpools-sdk< / a > < / li > < li > < a href = "PoolGraphBuilder.html" > PoolGraphBuilder< / a > < / li > < / ul > < h1 > Class PoolGraphBuilder < / 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 builder class for creating a < a href = "../modules.html#PoolGraph" > PoolGraph< / a > < / p >
< / div > < div > < p > Note: we use an adjacency list as a representation of our pool graph,
since we assume that most token pairings don' t exist as pools< / p >
2023-05-12 18:15:27 -07:00
< / div > < / div > < / section > < section class = "tsd-panel tsd-hierarchy" > < h3 > Hierarchy< / h3 > < ul class = "tsd-hierarchy" > < li > < span class = "target" > PoolGraphBuilder< / 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 = "PoolGraphBuilder.html#constructor" class = "tsd-kind-icon" > constructor< / 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 tsd-is-static" > < a href = "PoolGraphBuilder.html#buildPoolGraph" class = "tsd-kind-icon" > build< wbr / > Pool< wbr / > Graph< / a > < / li > < li class = "tsd-kind-method tsd-parent-kind-class tsd-is-static" > < a href = "PoolGraphBuilder.html#buildPoolGraphWithFetch" class = "tsd-kind-icon" > build< wbr / > Pool< wbr / > Graph< wbr / > With< wbr / > Fetch< / 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 id = "constructor" class = "tsd-anchor" > < / a > < h3 class = "tsd-anchor-link" > constructor< a href = "#constructor" aria-label = "Permalink" class = "tsd-anchor-icon" > < svg xmlns = "http://www.w3.org/2000/svg" class = "icon icon-tabler icon-tabler-link" viewBox = "0 0 24 24" stroke-width = "2" stroke = "currentColor" fill = "none" stroke-linecap = "round" stroke-linejoin = "round" > < path stroke = "none" d = "M0 0h24v24H0z" fill = "none" > < / path > < path d = "M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5" > < / path > < path d = "M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5" > < / path > < / svg > < / a > < / h3 > < ul class = "tsd-signatures tsd-kind-constructor tsd-parent-kind-class" > < li class = "tsd-signature tsd-kind-icon" > new < wbr / > Pool< wbr / > Graph< wbr / > Builder< span class = "tsd-signature-symbol" > (< / span > < span class = "tsd-signature-symbol" > )< / span > < span class = "tsd-signature-symbol" > : < / span > < a href = "PoolGraphBuilder.html" class = "tsd-signature-type" data-tsd-kind = "Class" > PoolGraphBuilder< / a > < / li > < / ul > < ul class = "tsd-descriptions" > < li class = "tsd-description" > < h4 class = "tsd-returns-title" > Returns < a href = "PoolGraphBuilder.html" class = "tsd-signature-type" data-tsd-kind = "Class" > PoolGraphBuilder< / a > < / 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 tsd-is-static" > < a id = "buildPoolGraph" class = "tsd-anchor" > < / a > < h3 class = "tsd-anchor-link" > < span class = "tsd-flag ts-flagStatic" > Static< / span > build< wbr / > Pool< wbr / > Graph< a href = "#buildPoolGraph" aria-label = "Permalink" class = "tsd-anchor-icon" > < svg xmlns = "http://www.w3.org/2000/svg" class = "icon icon-tabler icon-tabler-link" viewBox = "0 0 24 24" stroke-width = "2" stroke = "currentColor" fill = "none" stroke-linecap = "round" stroke-linejoin = "round" > < path stroke = "none" d = "M0 0h24v24H0z" fill = "none" > < / path > < path d = "M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5" > < / path > < path d = "M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5" > < / path > < / svg > < / a > < / h3 > < ul class = "tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-static" > < li class = "tsd-signature tsd-kind-icon" > build< wbr / > Pool< wbr / > Graph< span class = "tsd-signature-symbol" > (< / span > poolTokenPairs< span class = "tsd-signature-symbol" > : < / span > < a href = "../interfaces/PoolTokenPair.html" class = "tsd-signature-type" data-tsd-kind = "Interface" > PoolTokenPair< / a > < span class = "tsd-signature-symbol" > []< / span > < span class = "tsd-signature-symbol" > )< / span > < span class = "tsd-signature-symbol" > : < / span > < a href = "../modules.html#PoolGraph" class = "tsd-signature-type" data-tsd-kind = "Type alias" > PoolGraph< / a > < / li > < / ul > < ul class = "tsd-descriptions" > < li class = "tsd-description" > < aside class = "tsd-sources" > < ul > < li > Defined in < a href = "https://github.com/orca-so/whirlpools/blob/9e0a389/sdk/src/utils/graphs/public/pool-graph-builder.ts#L51" > utils/graphs/public/pool-graph-builder.ts:51< / a > < / li > < / ul > < / aside > < div class = "tsd-comment ts
2023-03-20 20:28:40 -07:00
< p > Build a < a href = "../modules.html#PoolGraph" > PoolGraph< / a > from a list of pools in the format of < a href = "../interfaces/PoolTokenPair.html" > PoolTokenPair< / a > < / p >
< / div > < / div > < h4 class = "tsd-parameters-title" > Parameters< / h4 > < ul class = "tsd-parameters" > < li > < h5 > poolTokenPairs: < a href = "../interfaces/PoolTokenPair.html" class = "tsd-signature-type" data-tsd-kind = "Interface" > PoolTokenPair< / a > < span class = "tsd-signature-symbol" > []< / span > < / h5 > < div class = "tsd-comment tsd-typography" > < div class = "lead" >
< p > a list of < a href = "../interfaces/PoolTokenPair.html" > PoolTokenPair< / a > to generate this pool graph< / p >
< / div > < / div > < / li > < / ul > < h4 class = "tsd-returns-title" > Returns < a href = "../modules.html#PoolGraph" class = "tsd-signature-type" data-tsd-kind = "Type alias" > PoolGraph< / a > < / h4 > < div > < p > A < a href = "../modules.html#PoolGraph" > PoolGraph< / a > with the provided pools< / p >
2023-05-12 18:15:27 -07:00
< / div > < / li > < / ul > < / section > < section class = "tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-static" > < a id = "buildPoolGraphWithFetch" class = "tsd-anchor" > < / a > < h3 class = "tsd-anchor-link" > < span class = "tsd-flag ts-flagStatic" > Static< / span > build< wbr / > Pool< wbr / > Graph< wbr / > With< wbr / > Fetch< a href = "#buildPoolGraphWithFetch" aria-label = "Permalink" class = "tsd-anchor-icon" > < svg xmlns = "http://www.w3.org/2000/svg" class = "icon icon-tabler icon-tabler-link" viewBox = "0 0 24 24" stroke-width = "2" stroke = "currentColor" fill = "none" stroke-linecap = "round" stroke-linejoin = "round" > < path stroke = "none" d = "M0 0h24v24H0z" fill = "none" > < / path > < path d = "M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5" > < / path > < path d = "M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5" > < / path > < / svg > < / a > < / h3 > < ul class = "tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-static" > < li class = "tsd-signature tsd-kind-icon" > build< wbr / > Pool< wbr / > Graph< wbr / > With< wbr / > Fetch< span class = "tsd-signature-symbol" > (< / span > pools< span class = "tsd-signature-symbol" > : < / span > < span class = "tsd-signature-type" > Address< / span > < span class = "tsd-signature-symbol" > []< / span > , fetcher< span class = "tsd-signature-symbol" > : < / span > < a href = "AccountFetcher.html" class = "tsd-signature-type" data-tsd-kind = "Class" > AccountFetcher< / a > < span class = "tsd-signature-symbol" > )< / span > < span class = "tsd-signature-symbol" > : < / span > < span class = "tsd-signature-type" > Promise< / span > < span class = "tsd-signature-symbol" > < < / span > < a href = "../modules.html#PoolGraph" class = "tsd-signature-type" data-tsd-kind = "Type alias" > PoolGraph< / a > < span class = "tsd-signature-symbol" > > < / span > < / li > < / ul > < ul class = "tsd-descriptions" > < li class = "tsd-description" > < aside class = "tsd-sources" > < ul > < li > Defined in < a href = "https://github.com/orca-so/whirlpools/blob/9e0a389/sdk/src/utils/graphs/public/pool-graph-builder.ts#L22" > utils/graphs/public/pool-graph-builder.ts:22< / a > < / li > < / ul > < / aside > < div class = "tsd-comment tsd-typography" > < div class = "lead" >
2023-03-20 20:28:40 -07:00
< p > Fetch data and build a < a href = "../modules.html#PoolGraph" > PoolGraph< / a > from a list of pools addresses< / p >
< / div > < / div > < h4 class = "tsd-parameters-title" > Parameters< / h4 > < ul class = "tsd-parameters" > < li > < h5 > pools: < span class = "tsd-signature-type" > Address< / span > < span class = "tsd-signature-symbol" > []< / span > < / h5 > < div class = "tsd-comment tsd-typography" > < div class = "lead" >
< p > a list of pool addresses to generate this pool graph< / p >
< / div > < / div > < / li > < li > < h5 > fetcher: < a href = "AccountFetcher.html" class = "tsd-signature-type" data-tsd-kind = "Class" > AccountFetcher< / a > < / h5 > < div class = "tsd-comment tsd-typography" > < div class = "lead" >
< p > < a href = "AccountFetcher.html" > AccountFetcher< / a > to use for fetching pool data< / p >
< / div > < / div > < / li > < / ul > < h4 class = "tsd-returns-title" > Returns < span class = "tsd-signature-type" > Promise< / span > < span class = "tsd-signature-symbol" > < < / span > < a href = "../modules.html#PoolGraph" class = "tsd-signature-type" data-tsd-kind = "Type alias" > PoolGraph< / a > < span class = "tsd-signature-symbol" > > < / span > < / h4 > < div > < p > A < a href = "../modules.html#PoolGraph" > PoolGraph< / a > with the provided pools< / p >
< / div > < / li > < / ul > < / section > < / section > < / div > < div class = "col-4 col-menu menu-sticky-wrap menu-highlight" > < nav class = "tsd-navigation primary" > < ul > < li class = "" > < a href = "../modules.html" > Exports< / a > < / li > < / ul > < / nav > < nav class = "tsd-navigation secondary menu-sticky" > < ul > < li class = "current tsd-kind-class" > < a href = "PoolGraphBuilder.html" class = "tsd-kind-icon" > Pool< wbr / > Graph< wbr / > Builder< / a > < ul > < li class = "tsd-kind-constructor tsd-parent-kind-class" > < a href = "PoolGraphBuilder.html#constructor" class = "tsd-kind-icon" > constructor< / a > < / li > < li class = "tsd-kind-method tsd-parent-kind-class tsd-is-static" > < a href = "PoolGraphBuilder.html#buildPoolGraph" class = "tsd-kind-icon" > build< wbr / > Pool< wbr / > Graph< / a > < / li > < li class = "tsd-kind-method tsd-parent-kind-class tsd-is-static" > < a href = "PoolGraphBuilder.html#buildPoolGraphWithFetch" class = "tsd-kind-icon" > build< wbr / > Pool< wbr / > Graph< wbr / > With< wbr / > Fetch< / a > < / li > < / ul > < / li > < / 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-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 > < / ul > < ul class = "tsd-legend" > < 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 > < / 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-method tsd-parent-kind-class tsd-is-static" > < span class = "tsd-kind-icon" > Static method< / span > < / li > < / ul > < / div > < h2 > Settings< / h2 > < p > Theme < select id = "theme" > < option value = "os" > OS< / option > < option value = "light" > Light< / option > < option value = "dark" > Dark< / option > < / select > < / p > < / div > < / footer > < div class = "container tsd-generator" > < p > Generated using < a href = "https://typedoc.org/" target = "_blank" > TypeDoc< / a > < / p > < / div > < div class = "overlay" > < / div > < script src = "../assets/main.js" > < / script > < / body > < / html >