scryfall-api 3.2.0 → 3.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/dist/scryfall-api.js +1 -0
  2. package/dist/scryfall-api.mjs +307 -0
  3. package/dist/scryfall-api.umd.js +1 -0
  4. package/dist/types/src/api/CardIdentifierBuilder.d.ts +28 -0
  5. package/dist/types/src/api/Cards.d.ts +17 -0
  6. package/dist/types/src/api/Catalog.d.ts +18 -0
  7. package/dist/types/src/api/Rulings.d.ts +10 -0
  8. package/dist/types/src/api/Sets.d.ts +9 -0
  9. package/dist/types/src/api/Symbology.d.ts +7 -0
  10. package/dist/types/src/error/MagicQueryError.d.ts +3 -0
  11. package/dist/types/src/index.d.ts +10 -0
  12. package/dist/types/src/query/MagicPageResult.d.ts +12 -0
  13. package/dist/types/src/query/MagicQuery.d.ts +13 -0
  14. package/dist/types/src/types/Border.d.ts +1 -0
  15. package/dist/types/src/types/BulkDataDefinition.d.ts +0 -0
  16. package/dist/types/src/types/BulkDataType.d.ts +0 -0
  17. package/dist/types/src/types/BulkDataTypes.d.ts +1 -0
  18. package/dist/types/src/types/Card.d.ts +0 -0
  19. package/dist/types/src/types/CardFace.d.ts +0 -0
  20. package/dist/types/src/types/CardIdentifier.d.ts +0 -0
  21. package/dist/types/src/types/CardSymbol.d.ts +0 -0
  22. package/dist/types/src/types/Color.d.ts +1 -0
  23. package/dist/types/src/types/Format.d.ts +1 -0
  24. package/dist/types/src/types/FrameEffect.d.ts +1 -0
  25. package/dist/types/src/types/Game.d.ts +1 -0
  26. package/dist/types/src/types/HomepageLink.d.ts +0 -0
  27. package/dist/types/src/types/ImageUris.d.ts +0 -0
  28. package/dist/types/src/types/Layout.d.ts +1 -0
  29. package/dist/types/src/types/Legalties.d.ts +0 -0
  30. package/dist/types/src/types/Legalty.d.ts +1 -0
  31. package/dist/types/src/types/ManaCost.d.ts +0 -0
  32. package/dist/types/src/types/PageQuery.d.ts +0 -0
  33. package/dist/types/src/types/PageQueryValue.d.ts +0 -0
  34. package/dist/types/src/types/Preview.d.ts +0 -0
  35. package/dist/types/src/types/Prices.d.ts +0 -0
  36. package/dist/types/src/types/PromoType.d.ts +1 -0
  37. package/dist/types/src/types/PurchaseUris.d.ts +0 -0
  38. package/dist/types/src/types/Query.d.ts +0 -0
  39. package/dist/types/src/types/Rarity.d.ts +1 -0
  40. package/dist/types/src/types/RelatedCard.d.ts +0 -0
  41. package/dist/types/src/types/RelatedCardComponent.d.ts +1 -0
  42. package/dist/types/src/types/RelatedUris.d.ts +0 -0
  43. package/dist/types/src/types/ResultCatalog.d.ts +0 -0
  44. package/dist/types/src/types/ResultData.d.ts +0 -0
  45. package/dist/types/src/types/ResultList.d.ts +0 -0
  46. package/dist/types/src/types/RetryStrategy.d.ts +0 -0
  47. package/dist/types/src/types/Ruling.d.ts +0 -0
  48. package/dist/types/src/types/SearchError.d.ts +0 -0
  49. package/dist/types/src/types/SearchOptions.d.ts +0 -0
  50. package/dist/types/src/types/Set.d.ts +0 -0
  51. package/dist/types/src/types/SetType.d.ts +1 -0
  52. package/dist/types/src/types/Sort.d.ts +1 -0
  53. package/dist/types/src/types/SortDirection.d.ts +1 -0
  54. package/dist/types/src/types/TOrArrayOfT.d.ts +0 -0
  55. package/dist/types/src/types/UniqueStrategy.d.ts +1 -0
  56. package/dist/types/src/types/index.d.ts +42 -0
  57. package/package.json +35 -48
  58. package/dist/declarations/dist/src/api/CardIdentifierBuilder.d.ts +0 -10
  59. package/dist/declarations/dist/src/api/Cards.d.ts +0 -19
  60. package/dist/declarations/dist/src/api/Catalog.d.ts +0 -18
  61. package/dist/declarations/dist/src/api/Rulings.d.ts +0 -11
  62. package/dist/declarations/dist/src/api/Sets.d.ts +0 -10
  63. package/dist/declarations/dist/src/api/Symbology.d.ts +0 -8
  64. package/dist/declarations/dist/src/error/MagicQueryError.d.ts +0 -5
  65. package/dist/declarations/dist/src/index.d.ts +0 -10
  66. package/dist/declarations/dist/src/query/MagicPageResult.d.ts +0 -18
  67. package/dist/declarations/dist/src/query/MagicQuery.d.ts +0 -13
  68. package/dist/declarations/dist/src/types/Border.d.ts +0 -7
  69. package/dist/declarations/dist/src/types/BulkDataDefinition.d.ts +0 -14
  70. package/dist/declarations/dist/src/types/BulkDataType.d.ts +0 -2
  71. package/dist/declarations/dist/src/types/BulkDataTypes.d.ts +0 -7
  72. package/dist/declarations/dist/src/types/Card.d.ts +0 -91
  73. package/dist/declarations/dist/src/types/CardFace.d.ts +0 -22
  74. package/dist/declarations/dist/src/types/CardIdentifier.d.ts +0 -10
  75. package/dist/declarations/dist/src/types/CardSymbol.d.ts +0 -13
  76. package/dist/declarations/dist/src/types/Color.d.ts +0 -9
  77. package/dist/declarations/dist/src/types/Format.d.ts +0 -15
  78. package/dist/declarations/dist/src/types/FrameEffect.d.ts +0 -17
  79. package/dist/declarations/dist/src/types/Game.d.ts +0 -5
  80. package/dist/declarations/dist/src/types/HomepageLink.d.ts +0 -9
  81. package/dist/declarations/dist/src/types/ImageUris.d.ts +0 -8
  82. package/dist/declarations/dist/src/types/Layout.d.ts +0 -22
  83. package/dist/declarations/dist/src/types/Legalties.d.ts +0 -5
  84. package/dist/declarations/dist/src/types/Legalty.d.ts +0 -6
  85. package/dist/declarations/dist/src/types/ManaCost.d.ts +0 -9
  86. package/dist/declarations/dist/src/types/PageQuery.d.ts +0 -5
  87. package/dist/declarations/dist/src/types/PageQueryValue.d.ts +0 -1
  88. package/dist/declarations/dist/src/types/Preview.d.ts +0 -5
  89. package/dist/declarations/dist/src/types/Prices.d.ts +0 -6
  90. package/dist/declarations/dist/src/types/PromoType.d.ts +0 -27
  91. package/dist/declarations/dist/src/types/PurchaseUris.d.ts +0 -6
  92. package/dist/declarations/dist/src/types/Query.d.ts +0 -4
  93. package/dist/declarations/dist/src/types/Rarity.d.ts +0 -6
  94. package/dist/declarations/dist/src/types/RelatedCard.d.ts +0 -9
  95. package/dist/declarations/dist/src/types/RelatedCardComponent.d.ts +0 -6
  96. package/dist/declarations/dist/src/types/RelatedUris.d.ts +0 -7
  97. package/dist/declarations/dist/src/types/ResultCatalog.d.ts +0 -2
  98. package/dist/declarations/dist/src/types/ResultData.d.ts +0 -4
  99. package/dist/declarations/dist/src/types/ResultList.d.ts +0 -7
  100. package/dist/declarations/dist/src/types/RetryStrategy.d.ts +0 -11
  101. package/dist/declarations/dist/src/types/Ruling.d.ts +0 -5
  102. package/dist/declarations/dist/src/types/SearchError.d.ts +0 -7
  103. package/dist/declarations/dist/src/types/SearchOptions.d.ts +0 -15
  104. package/dist/declarations/dist/src/types/Set.d.ts +0 -20
  105. package/dist/declarations/dist/src/types/SetType.d.ts +0 -22
  106. package/dist/declarations/dist/src/types/Sort.d.ts +0 -15
  107. package/dist/declarations/dist/src/types/SortDirection.d.ts +0 -5
  108. package/dist/declarations/dist/src/types/TOrArrayOfT.d.ts +0 -1
  109. package/dist/declarations/dist/src/types/UniqueStrategy.d.ts +0 -5
  110. package/dist/declarations/dist/src/types/index.d.ts +0 -42
  111. package/dist/scryfall-api.cjs.d.ts +0 -1
  112. package/dist/scryfall-api.cjs.dev.js +0 -645
  113. package/dist/scryfall-api.cjs.js +0 -7
  114. package/dist/scryfall-api.cjs.prod.js +0 -645
  115. package/dist/scryfall-api.esm.js +0 -631
  116. package/dist/scryfall-api.umd.min.js +0 -2
  117. package/dist/scryfall-api.umd.min.js.map +0 -1
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const $=require("axios");class N{static byId(e){return{id:e}}static byIllustrationId(e){return{illustration_id:e}}static byMtgoId(e){return{mtgo_id:e}}static byMultiverseId(e){return{multiverse_id:e}}static byName(e,a){return a?{name:e,set:a}:{name:e}}static byOracleId(e){return{oracle_id:e}}static bySet(e,a){return{collector_number:`${a}`,set:e}}}class z{constructor(e,a,t,n){this.q=e,this.apiPath=a,this.query=t,this.post=n,this._hasMore=!0,this._count=0}_hasMore;_count;get count(){return this._count}get hasMore(){return this._hasMore}async all(){const e=[];for(;this._hasMore;){const a=await this.next();e.push(...a)}return e}async get(e){const a=[];for(;this._hasMore;){const t=await this.next();if(a.push(...t),a.length===e)return a;if(a.length>e)return a.slice(0,e)}return a}async next(){const e=await this.q.query(this.apiPath,this.query,this.post);return this._hasMore=e?.has_more??!1,this._count=Number.parseInt(`${e?.total_cards??0}`,10),this._hasMore&&this.setNextPage(),e?.data??[]}async page(e){return this.query.page=e,this.next()}setNextPage(){this.query.page=this.query.page+1}}class d extends Error{constructor(e){super(typeof e=="string"?e:e?.details),this.data=e,Object.setPrototypeOf(this,d.prototype)}}class r{static retry={attempts:1};static endpoint="https://api.scryfall.com";static lastQuery=100;static rateLimit=100;static canRetry(e){return typeof e=="string"||e?.code==="not_found"||e?.code==="bad_request"?!1:!r.retry.canRetry||r.retry.canRetry(e)}static async debounce(){const e=Date.now(),a=e-r.lastQuery;if(a>=r.rateLimit)r.lastQuery=e;else{const t=r.rateLimit-a;r.lastQuery+=t,await r.sleep(t)}}static async sleep(e=0){return new Promise(a=>{setTimeout(a,e)})}static async tryQuery(e,a,t,n){await r.debounce();const c={data:t,method:t?"POST":"GET",params:a,url:`${r.endpoint}/${e}`,headers:{"Accept-Encoding":"gzip,deflate,compress"},...n};try{return await $.request(c)}catch(i){if(i.isAxiosError){const l=i;throw new d(l.response?.data??l.message)}else throw i}}async query(e,a,t,n){let c="";typeof e=="number"||typeof e=="string"?c=e:e&&(c=e.join("/"));let i,l;for(i=0;i<r.retry.attempts;i++){let h;try{l=await r.tryQuery(`${c}`,a,t,n)}catch(u){if(u instanceof d)h=u.data;else throw u}if(l||!r.canRetry(h))break;await r.sleep(r.retry.timeout)}return l?.data}}class j extends r{async autoCompleteName(e){return(await this.query("cards/autocomplete",{q:e}))?.data??[]}async byArenaId(e){return this.query(["cards/arena",e])}async byId(e){return this.query(["cards",e])}async byMtgoId(e){return this.query(["cards/mtgo",e])}async byMultiverseId(e){return this.query(["cards/multiverse",e])}async byName(e,a,t=!1){let n=t,c=a;return typeof a=="boolean"&&(n=a,c=void 0),this.query("cards/named",{[n?"fuzzy":"exact"]:e,set:c})}async bySet(e,a,t){const n=["cards",e,a];return t&&n.push(t),this.query(n)}async byTcgPlayerId(e){return this.query(["cards/tcgplayer",e])}async collection(...e){const a=[];for(let t=0;t<e.length;t+=75){const n={identifiers:e.slice(t,t+75)},c=await this.query("cards/collection",void 0,n);a.push(...c?.data??[])}return a}async random(){return this.query("cards/random")}search(e,a){return new z(this,"cards/search",{q:e,...typeof a=="number"?{page:a}:{page:1,...a}})}}const A=new j;class O extends r{async artifactTypes(){return(await this.query("catalog/artifact-types"))?.data??[]}async artistNames(){return(await this.query("catalog/artist-names"))?.data??[]}async cardNames(){return(await this.query("catalog/card-names"))?.data??[]}async creatureTypes(){return(await this.query("catalog/creature-types"))?.data??[]}async enchantmentTypes(){return(await this.query("catalog/enchantment-types"))?.data??[]}async landTypes(){return(await this.query("catalog/land-types"))?.data??[]}async loyalties(){return(await this.query("catalog/loyalties"))?.data??[]}async planeswalkerTypes(){return(await this.query("catalog/planeswalker-types"))?.data??[]}async powers(){return(await this.query("catalog/powers"))?.data??[]}async spellTypes(){return(await this.query("catalog/spell-types"))?.data??[]}async toughnesses(){return(await this.query("catalog/toughnesses"))?.data??[]}async watermarks(){return(await this.query("catalog/watermarks"))?.data??[]}async wordBank(){return(await this.query("catalog/word-bank"))?.data??[]}}const M=new O;class H extends r{async byArenaId(e){return(await this.query(["cards/arena",e,"rulings"]))?.data??[]}async byId(e){return(await this.query(["cards",e,"rulings"]))?.data??[]}async byMtgoId(e){return(await this.query(["cards/mtgo",e,"rulings"]))?.data??[]}async byMultiverseId(e){return(await this.query(["cards/multiverse",e,"rulings"]))?.data??[]}async bySet(e,a){return(await this.query(["cards",e,`${a}`,"rulings"]))?.data??[]}}const J=new H;class K extends r{async all(){return(await this.query("sets"))?.data??[]}async byCode(e){return await this.query(["sets",e])}async byId(e){return this.query(["sets",e])}async byTcgPlayerId(e){return this.query(["sets/tcgplayer",e])}}const V=new K;class W extends r{async all(){return(await this.query("symbology"))?.data??[]}async parseMana(e){return await this.query("symbology/parse-mana",{cost:e})}}const X=new W;var o=(s=>(s[s.black=0]="black",s[s.borderless=1]="borderless",s[s.gold=2]="gold",s[s.silver=3]="silver",s[s.white=4]="white",s))(o||{}),g=(s=>(s[s.oracle_cards=0]="oracle_cards",s[s.unique_artwork=1]="unique_artwork",s[s.default_cards=2]="default_cards",s[s.all_cards=3]="all_cards",s[s.rulings=4]="rulings",s))(g||{}),w=(s=>(s[s.standard=0]="standard",s[s.future=1]="future",s[s.historic=2]="historic",s[s.pioneer=3]="pioneer",s[s.modern=4]="modern",s[s.legacy=5]="legacy",s[s.pauper=6]="pauper",s[s.vintage=7]="vintage",s[s.penny=8]="penny",s[s.commander=9]="commander",s[s.brawl=10]="brawl",s[s.duel=11]="duel",s[s.oldschool=12]="oldschool",s))(w||{}),b=(s=>(s[s.legendary=0]="legendary",s[s.miracle=1]="miracle",s[s.nyxtouched=2]="nyxtouched",s[s.draft=3]="draft",s[s.devoid=4]="devoid",s[s.tombstone=5]="tombstone",s[s.colorshifted=6]="colorshifted",s[s.inverted=7]="inverted",s[s.sunmoondfc=8]="sunmoondfc",s[s.compasslanddfc=9]="compasslanddfc",s[s.originpwdfc=10]="originpwdfc",s[s.mooneldrazidfc=11]="mooneldrazidfc",s[s.moonreversemoondfc=12]="moonreversemoondfc",s[s.showcase=13]="showcase",s[s.extendedart=14]="extendedart",s))(b||{}),v=(s=>(s[s.paper=0]="paper",s[s.arena=1]="arena",s[s.mtgo=2]="mtgo",s))(v||{}),q=(s=>(s[s.normal=0]="normal",s[s.split=1]="split",s[s.flip=2]="flip",s[s.transform=3]="transform",s[s.modal_dfc=4]="modal_dfc",s[s.meld=5]="meld",s[s.leveler=6]="leveler",s[s.class=7]="class",s[s.saga=8]="saga",s[s.adventure=9]="adventure",s[s.planar=10]="planar",s[s.scheme=11]="scheme",s[s.vanguard=12]="vanguard",s[s.token=13]="token",s[s.double_faced_token=14]="double_faced_token",s[s.emblem=15]="emblem",s[s.augment=16]="augment",s[s.host=17]="host",s[s.art_series=18]="art_series",s[s.reversible_card=19]="reversible_card",s))(q||{}),_=(s=>(s[s.legal=0]="legal",s[s.not_legal=1]="not_legal",s[s.restricted=2]="restricted",s[s.banned=3]="banned",s))(_||{}),y=(s=>(s[s.tourney=0]="tourney",s[s.prerelease=1]="prerelease",s[s.datestamped=2]="datestamped",s[s.planeswalkerdeck=3]="planeswalkerdeck",s[s.buyabox=4]="buyabox",s[s.judgegift=5]="judgegift",s[s.event=6]="event",s[s.convention=7]="convention",s[s.starterdeck=8]="starterdeck",s[s.instore=9]="instore",s[s.setpromo=10]="setpromo",s[s.fnm=11]="fnm",s[s.openhouse=12]="openhouse",s[s.league=13]="league",s[s.draftweekend=14]="draftweekend",s[s.gameday=15]="gameday",s[s.release=16]="release",s[s.intropack=17]="intropack",s[s.giftbox=18]="giftbox",s[s.duels=19]="duels",s[s.wizardsplaynetwork=20]="wizardsplaynetwork",s[s.premiereshop=21]="premiereshop",s[s.playerrewards=22]="playerrewards",s[s.gateway=23]="gateway",s[s.arenaleague=24]="arenaleague",s))(y||{}),x=(s=>(s[s.common=0]="common",s[s.uncommon=1]="uncommon",s[s.rare=2]="rare",s[s.mythic=3]="mythic",s))(x||{}),k=(s=>(s[s.token=0]="token",s[s.meld_part=1]="meld_part",s[s.meld_result=2]="meld_result",s[s.combo_piece=3]="combo_piece",s))(k||{}),m=(s=>(s[s.core=0]="core",s[s.expansion=1]="expansion",s[s.masters=2]="masters",s[s.masterpiece=3]="masterpiece",s[s.from_the_vault=4]="from_the_vault",s[s.spellbook=5]="spellbook",s[s.premium_deck=6]="premium_deck",s[s.duel_deck=7]="duel_deck",s[s.draft_innovation=8]="draft_innovation",s[s.treasure_chest=9]="treasure_chest",s[s.commander=10]="commander",s[s.planechase=11]="planechase",s[s.archenemy=12]="archenemy",s[s.vanguard=13]="vanguard",s[s.funny=14]="funny",s[s.starter=15]="starter",s[s.box=16]="box",s[s.promo=17]="promo",s[s.token=18]="token",s[s.memorabilia=19]="memorabilia",s))(m||{}),f=(s=>(s[s.name=0]="name",s[s.set=1]="set",s[s.released=2]="released",s[s.rarity=3]="rarity",s[s.color=4]="color",s[s.usd=5]="usd",s[s.tix=6]="tix",s[s.eur=7]="eur",s[s.cmc=8]="cmc",s[s.power=9]="power",s[s.toughness=10]="toughness",s[s.edhrec=11]="edhrec",s[s.artist=12]="artist",s))(f||{}),p=(s=>(s[s.auto=0]="auto",s[s.asc=1]="asc",s[s.desc=2]="desc",s))(p||{}),I=(s=>(s[s.cards=0]="cards",s[s.art=1]="art",s[s.prints=2]="prints",s))(I||{});exports.Border=o;exports.BulkDataTypes=g;exports.CardIdentifierBuilder=N;exports.Cards=A;exports.Catalog=M;exports.Format=w;exports.FrameEffect=b;exports.Game=v;exports.Layout=q;exports.Legality=_;exports.MagicQueryError=d;exports.PromoType=y;exports.Rarity=x;exports.RelatedCardComponent=k;exports.Rulings=J;exports.SetType=m;exports.Sets=V;exports.Sort=f;exports.SortDirection=p;exports.Symbology=X;exports.UniqueStrategy=I;
@@ -0,0 +1,307 @@
1
+ import g from "axios";
2
+ class J {
3
+ static byId(e) {
4
+ return { id: e };
5
+ }
6
+ static byIllustrationId(e) {
7
+ return { illustration_id: e };
8
+ }
9
+ static byMtgoId(e) {
10
+ return { mtgo_id: e };
11
+ }
12
+ static byMultiverseId(e) {
13
+ return { multiverse_id: e };
14
+ }
15
+ static byName(e, a) {
16
+ return a ? { name: e, set: a } : { name: e };
17
+ }
18
+ static byOracleId(e) {
19
+ return { oracle_id: e };
20
+ }
21
+ static bySet(e, a) {
22
+ return { collector_number: `${a}`, set: e };
23
+ }
24
+ }
25
+ class w {
26
+ constructor(e, a, t, n) {
27
+ this.q = e, this.apiPath = a, this.query = t, this.post = n, this._hasMore = !0, this._count = 0;
28
+ }
29
+ _hasMore;
30
+ _count;
31
+ get count() {
32
+ return this._count;
33
+ }
34
+ get hasMore() {
35
+ return this._hasMore;
36
+ }
37
+ async all() {
38
+ const e = [];
39
+ for (; this._hasMore; ) {
40
+ const a = await this.next();
41
+ e.push(...a);
42
+ }
43
+ return e;
44
+ }
45
+ async get(e) {
46
+ const a = [];
47
+ for (; this._hasMore; ) {
48
+ const t = await this.next();
49
+ if (a.push(...t), a.length === e)
50
+ return a;
51
+ if (a.length > e)
52
+ return a.slice(0, e);
53
+ }
54
+ return a;
55
+ }
56
+ async next() {
57
+ const e = await this.q.query(this.apiPath, this.query, this.post);
58
+ return this._hasMore = e?.has_more ?? !1, this._count = Number.parseInt(`${e?.total_cards ?? 0}`, 10), this._hasMore && this.setNextPage(), e?.data ?? [];
59
+ }
60
+ async page(e) {
61
+ return this.query.page = e, this.next();
62
+ }
63
+ setNextPage() {
64
+ this.query.page = this.query.page + 1;
65
+ }
66
+ }
67
+ class d extends Error {
68
+ constructor(e) {
69
+ super(typeof e == "string" ? e : e?.details), this.data = e, Object.setPrototypeOf(this, d.prototype);
70
+ }
71
+ }
72
+ class r {
73
+ static retry = { attempts: 1 };
74
+ // the path to the api
75
+ static endpoint = "https://api.scryfall.com";
76
+ // time when the last api call was made
77
+ static lastQuery = 100;
78
+ // the api requests 50-100 ms between calls, we go on the generous side and never wait less than 100 ms between calls
79
+ static rateLimit = 100;
80
+ static canRetry(e) {
81
+ return typeof e == "string" || e?.code === "not_found" || e?.code === "bad_request" ? !1 : !r.retry.canRetry || r.retry.canRetry(e);
82
+ }
83
+ static async debounce() {
84
+ const e = Date.now(), a = e - r.lastQuery;
85
+ if (a >= r.rateLimit)
86
+ r.lastQuery = e;
87
+ else {
88
+ const t = r.rateLimit - a;
89
+ r.lastQuery += t, await r.sleep(t);
90
+ }
91
+ }
92
+ static async sleep(e = 0) {
93
+ return new Promise((a) => {
94
+ setTimeout(a, e);
95
+ });
96
+ }
97
+ static async tryQuery(e, a, t, n) {
98
+ await r.debounce();
99
+ const c = {
100
+ data: t,
101
+ method: t ? "POST" : "GET",
102
+ params: a,
103
+ url: `${r.endpoint}/${e}`,
104
+ headers: { "Accept-Encoding": "gzip,deflate,compress" },
105
+ ...n
106
+ };
107
+ try {
108
+ return await g.request(c);
109
+ } catch (i) {
110
+ if (i.isAxiosError) {
111
+ const l = i;
112
+ throw new d(l.response?.data ?? l.message);
113
+ } else
114
+ throw i;
115
+ }
116
+ }
117
+ async query(e, a, t, n) {
118
+ let c = "";
119
+ typeof e == "number" || typeof e == "string" ? c = e : e && (c = e.join("/"));
120
+ let i, l;
121
+ for (i = 0; i < r.retry.attempts; i++) {
122
+ let h;
123
+ try {
124
+ l = await r.tryQuery(`${c}`, a, t, n);
125
+ } catch (u) {
126
+ if (u instanceof d)
127
+ h = u.data;
128
+ else
129
+ throw u;
130
+ }
131
+ if (l || !r.canRetry(h))
132
+ break;
133
+ await r.sleep(r.retry.timeout);
134
+ }
135
+ return l?.data;
136
+ }
137
+ }
138
+ class o extends r {
139
+ async autoCompleteName(e) {
140
+ return (await this.query("cards/autocomplete", {
141
+ q: e
142
+ }))?.data ?? [];
143
+ }
144
+ async byArenaId(e) {
145
+ return this.query(["cards/arena", e]);
146
+ }
147
+ async byId(e) {
148
+ return this.query(["cards", e]);
149
+ }
150
+ async byMtgoId(e) {
151
+ return this.query(["cards/mtgo", e]);
152
+ }
153
+ async byMultiverseId(e) {
154
+ return this.query(["cards/multiverse", e]);
155
+ }
156
+ async byName(e, a, t = !1) {
157
+ let n = t, c = a;
158
+ return typeof a == "boolean" && (n = a, c = void 0), this.query("cards/named", {
159
+ [n ? "fuzzy" : "exact"]: e,
160
+ set: c
161
+ });
162
+ }
163
+ async bySet(e, a, t) {
164
+ const n = ["cards", e, a];
165
+ return t && n.push(t), this.query(n);
166
+ }
167
+ async byTcgPlayerId(e) {
168
+ return this.query(["cards/tcgplayer", e]);
169
+ }
170
+ async collection(...e) {
171
+ const a = [];
172
+ for (let t = 0; t < e.length; t += 75) {
173
+ const n = { identifiers: e.slice(t, t + 75) }, c = await this.query(
174
+ "cards/collection",
175
+ void 0,
176
+ n
177
+ );
178
+ a.push(...c?.data ?? []);
179
+ }
180
+ return a;
181
+ }
182
+ async random() {
183
+ return this.query("cards/random");
184
+ }
185
+ search(e, a) {
186
+ return new w(this, "cards/search", {
187
+ q: e,
188
+ ...typeof a == "number" ? { page: a } : { page: 1, ...a }
189
+ });
190
+ }
191
+ }
192
+ const K = new o();
193
+ class b extends r {
194
+ async artifactTypes() {
195
+ return (await this.query("catalog/artifact-types"))?.data ?? [];
196
+ }
197
+ async artistNames() {
198
+ return (await this.query("catalog/artist-names"))?.data ?? [];
199
+ }
200
+ async cardNames() {
201
+ return (await this.query("catalog/card-names"))?.data ?? [];
202
+ }
203
+ async creatureTypes() {
204
+ return (await this.query("catalog/creature-types"))?.data ?? [];
205
+ }
206
+ async enchantmentTypes() {
207
+ return (await this.query("catalog/enchantment-types"))?.data ?? [];
208
+ }
209
+ async landTypes() {
210
+ return (await this.query("catalog/land-types"))?.data ?? [];
211
+ }
212
+ async loyalties() {
213
+ return (await this.query("catalog/loyalties"))?.data ?? [];
214
+ }
215
+ async planeswalkerTypes() {
216
+ return (await this.query("catalog/planeswalker-types"))?.data ?? [];
217
+ }
218
+ async powers() {
219
+ return (await this.query("catalog/powers"))?.data ?? [];
220
+ }
221
+ async spellTypes() {
222
+ return (await this.query("catalog/spell-types"))?.data ?? [];
223
+ }
224
+ async toughnesses() {
225
+ return (await this.query("catalog/toughnesses"))?.data ?? [];
226
+ }
227
+ async watermarks() {
228
+ return (await this.query("catalog/watermarks"))?.data ?? [];
229
+ }
230
+ async wordBank() {
231
+ return (await this.query("catalog/word-bank"))?.data ?? [];
232
+ }
233
+ }
234
+ const V = new b();
235
+ class v extends r {
236
+ async byArenaId(e) {
237
+ return (await this.query(["cards/arena", e, "rulings"]))?.data ?? [];
238
+ }
239
+ async byId(e) {
240
+ return (await this.query(["cards", e, "rulings"]))?.data ?? [];
241
+ }
242
+ async byMtgoId(e) {
243
+ return (await this.query(["cards/mtgo", e, "rulings"]))?.data ?? [];
244
+ }
245
+ async byMultiverseId(e) {
246
+ return (await this.query(["cards/multiverse", e, "rulings"]))?.data ?? [];
247
+ }
248
+ async bySet(e, a) {
249
+ return (await this.query([
250
+ "cards",
251
+ e,
252
+ `${a}`,
253
+ "rulings"
254
+ ]))?.data ?? [];
255
+ }
256
+ }
257
+ const W = new v();
258
+ class q extends r {
259
+ async all() {
260
+ return (await this.query("sets"))?.data ?? [];
261
+ }
262
+ async byCode(e) {
263
+ return await this.query(["sets", e]);
264
+ }
265
+ async byId(e) {
266
+ return this.query(["sets", e]);
267
+ }
268
+ async byTcgPlayerId(e) {
269
+ return this.query(["sets/tcgplayer", e]);
270
+ }
271
+ }
272
+ const X = new q();
273
+ class _ extends r {
274
+ async all() {
275
+ return (await this.query("symbology"))?.data ?? [];
276
+ }
277
+ async parseMana(e) {
278
+ return await this.query("symbology/parse-mana", {
279
+ cost: e
280
+ });
281
+ }
282
+ }
283
+ const Y = new _();
284
+ var x = /* @__PURE__ */ ((s) => (s[s.black = 0] = "black", s[s.borderless = 1] = "borderless", s[s.gold = 2] = "gold", s[s.silver = 3] = "silver", s[s.white = 4] = "white", s))(x || {}), k = /* @__PURE__ */ ((s) => (s[s.oracle_cards = 0] = "oracle_cards", s[s.unique_artwork = 1] = "unique_artwork", s[s.default_cards = 2] = "default_cards", s[s.all_cards = 3] = "all_cards", s[s.rulings = 4] = "rulings", s))(k || {}), y = /* @__PURE__ */ ((s) => (s[s.standard = 0] = "standard", s[s.future = 1] = "future", s[s.historic = 2] = "historic", s[s.pioneer = 3] = "pioneer", s[s.modern = 4] = "modern", s[s.legacy = 5] = "legacy", s[s.pauper = 6] = "pauper", s[s.vintage = 7] = "vintage", s[s.penny = 8] = "penny", s[s.commander = 9] = "commander", s[s.brawl = 10] = "brawl", s[s.duel = 11] = "duel", s[s.oldschool = 12] = "oldschool", s))(y || {}), m = /* @__PURE__ */ ((s) => (s[s.legendary = 0] = "legendary", s[s.miracle = 1] = "miracle", s[s.nyxtouched = 2] = "nyxtouched", s[s.draft = 3] = "draft", s[s.devoid = 4] = "devoid", s[s.tombstone = 5] = "tombstone", s[s.colorshifted = 6] = "colorshifted", s[s.inverted = 7] = "inverted", s[s.sunmoondfc = 8] = "sunmoondfc", s[s.compasslanddfc = 9] = "compasslanddfc", s[s.originpwdfc = 10] = "originpwdfc", s[s.mooneldrazidfc = 11] = "mooneldrazidfc", s[s.moonreversemoondfc = 12] = "moonreversemoondfc", s[s.showcase = 13] = "showcase", s[s.extendedart = 14] = "extendedart", s))(m || {}), f = /* @__PURE__ */ ((s) => (s[s.paper = 0] = "paper", s[s.arena = 1] = "arena", s[s.mtgo = 2] = "mtgo", s))(f || {}), I = /* @__PURE__ */ ((s) => (s[s.normal = 0] = "normal", s[s.split = 1] = "split", s[s.flip = 2] = "flip", s[s.transform = 3] = "transform", s[s.modal_dfc = 4] = "modal_dfc", s[s.meld = 5] = "meld", s[s.leveler = 6] = "leveler", s[s.class = 7] = "class", s[s.saga = 8] = "saga", s[s.adventure = 9] = "adventure", s[s.planar = 10] = "planar", s[s.scheme = 11] = "scheme", s[s.vanguard = 12] = "vanguard", s[s.token = 13] = "token", s[s.double_faced_token = 14] = "double_faced_token", s[s.emblem = 15] = "emblem", s[s.augment = 16] = "augment", s[s.host = 17] = "host", s[s.art_series = 18] = "art_series", s[s.reversible_card = 19] = "reversible_card", s))(I || {}), p = /* @__PURE__ */ ((s) => (s[s.legal = 0] = "legal", s[s.not_legal = 1] = "not_legal", s[s.restricted = 2] = "restricted", s[s.banned = 3] = "banned", s))(p || {}), $ = /* @__PURE__ */ ((s) => (s[s.tourney = 0] = "tourney", s[s.prerelease = 1] = "prerelease", s[s.datestamped = 2] = "datestamped", s[s.planeswalkerdeck = 3] = "planeswalkerdeck", s[s.buyabox = 4] = "buyabox", s[s.judgegift = 5] = "judgegift", s[s.event = 6] = "event", s[s.convention = 7] = "convention", s[s.starterdeck = 8] = "starterdeck", s[s.instore = 9] = "instore", s[s.setpromo = 10] = "setpromo", s[s.fnm = 11] = "fnm", s[s.openhouse = 12] = "openhouse", s[s.league = 13] = "league", s[s.draftweekend = 14] = "draftweekend", s[s.gameday = 15] = "gameday", s[s.release = 16] = "release", s[s.intropack = 17] = "intropack", s[s.giftbox = 18] = "giftbox", s[s.duels = 19] = "duels", s[s.wizardsplaynetwork = 20] = "wizardsplaynetwork", s[s.premiereshop = 21] = "premiereshop", s[s.playerrewards = 22] = "playerrewards", s[s.gateway = 23] = "gateway", s[s.arenaleague = 24] = "arenaleague", s))($ || {}), N = /* @__PURE__ */ ((s) => (s[s.common = 0] = "common", s[s.uncommon = 1] = "uncommon", s[s.rare = 2] = "rare", s[s.mythic = 3] = "mythic", s))(N || {}), z = /* @__PURE__ */ ((s) => (s[s.token = 0] = "token", s[s.meld_part = 1] = "meld_part", s[s.meld_result = 2] = "meld_result", s[s.combo_piece = 3] = "combo_piece", s))(z || {}), A = /* @__PURE__ */ ((s) => (s[s.core = 0] = "core", s[s.expansion = 1] = "expansion", s[s.masters = 2] = "masters", s[s.masterpiece = 3] = "masterpiece", s[s.from_the_vault = 4] = "from_the_vault", s[s.spellbook = 5] = "spellbook", s[s.premium_deck = 6] = "premium_deck", s[s.duel_deck = 7] = "duel_deck", s[s.draft_innovation = 8] = "draft_innovation", s[s.treasure_chest = 9] = "treasure_chest", s[s.commander = 10] = "commander", s[s.planechase = 11] = "planechase", s[s.archenemy = 12] = "archenemy", s[s.vanguard = 13] = "vanguard", s[s.funny = 14] = "funny", s[s.starter = 15] = "starter", s[s.box = 16] = "box", s[s.promo = 17] = "promo", s[s.token = 18] = "token", s[s.memorabilia = 19] = "memorabilia", s))(A || {}), j = /* @__PURE__ */ ((s) => (s[s.name = 0] = "name", s[s.set = 1] = "set", s[s.released = 2] = "released", s[s.rarity = 3] = "rarity", s[s.color = 4] = "color", s[s.usd = 5] = "usd", s[s.tix = 6] = "tix", s[s.eur = 7] = "eur", s[s.cmc = 8] = "cmc", s[s.power = 9] = "power", s[s.toughness = 10] = "toughness", s[s.edhrec = 11] = "edhrec", s[s.artist = 12] = "artist", s))(j || {}), O = /* @__PURE__ */ ((s) => (s[s.auto = 0] = "auto", s[s.asc = 1] = "asc", s[s.desc = 2] = "desc", s))(O || {}), M = /* @__PURE__ */ ((s) => (s[s.cards = 0] = "cards", s[s.art = 1] = "art", s[s.prints = 2] = "prints", s))(M || {});
285
+ export {
286
+ x as Border,
287
+ k as BulkDataTypes,
288
+ J as CardIdentifierBuilder,
289
+ K as Cards,
290
+ V as Catalog,
291
+ y as Format,
292
+ m as FrameEffect,
293
+ f as Game,
294
+ I as Layout,
295
+ p as Legality,
296
+ d as MagicQueryError,
297
+ $ as PromoType,
298
+ N as Rarity,
299
+ z as RelatedCardComponent,
300
+ W as Rulings,
301
+ A as SetType,
302
+ X as Sets,
303
+ j as Sort,
304
+ O as SortDirection,
305
+ Y as Symbology,
306
+ M as UniqueStrategy
307
+ };
@@ -0,0 +1 @@
1
+ (function(t,u){typeof exports=="object"&&typeof module<"u"?u(exports,require("axios")):typeof define=="function"&&define.amd?define(["exports","axios"],u):(t=typeof globalThis<"u"?globalThis:t||self,u(t.Scry={},t.Axios))})(this,function(t,u){"use strict";class z{static byId(e){return{id:e}}static byIllustrationId(e){return{illustration_id:e}}static byMtgoId(e){return{mtgo_id:e}}static byMultiverseId(e){return{multiverse_id:e}}static byName(e,a){return a?{name:e,set:a}:{name:e}}static byOracleId(e){return{oracle_id:e}}static bySet(e,a){return{collector_number:`${a}`,set:e}}}class j{constructor(e,a,n,i){this.q=e,this.apiPath=a,this.query=n,this.post=i,this._hasMore=!0,this._count=0}_hasMore;_count;get count(){return this._count}get hasMore(){return this._hasMore}async all(){const e=[];for(;this._hasMore;){const a=await this.next();e.push(...a)}return e}async get(e){const a=[];for(;this._hasMore;){const n=await this.next();if(a.push(...n),a.length===e)return a;if(a.length>e)return a.slice(0,e)}return a}async next(){const e=await this.q.query(this.apiPath,this.query,this.post);return this._hasMore=e?.has_more??!1,this._count=Number.parseInt(`${e?.total_cards??0}`,10),this._hasMore&&this.setNextPage(),e?.data??[]}async page(e){return this.query.page=e,this.next()}setNextPage(){this.query.page=this.query.page+1}}class h extends Error{constructor(e){super(typeof e=="string"?e:e?.details),this.data=e,Object.setPrototypeOf(this,h.prototype)}}class r{static retry={attempts:1};static endpoint="https://api.scryfall.com";static lastQuery=100;static rateLimit=100;static canRetry(e){return typeof e=="string"||e?.code==="not_found"||e?.code==="bad_request"?!1:!r.retry.canRetry||r.retry.canRetry(e)}static async debounce(){const e=Date.now(),a=e-r.lastQuery;if(a>=r.rateLimit)r.lastQuery=e;else{const n=r.rateLimit-a;r.lastQuery+=n,await r.sleep(n)}}static async sleep(e=0){return new Promise(a=>{setTimeout(a,e)})}static async tryQuery(e,a,n,i){await r.debounce();const c={data:n,method:n?"POST":"GET",params:a,url:`${r.endpoint}/${e}`,headers:{"Accept-Encoding":"gzip,deflate,compress"},...i};try{return await u.request(c)}catch(l){if(l.isAxiosError){const d=l;throw new h(d.response?.data??d.message)}else throw l}}async query(e,a,n,i){let c="";typeof e=="number"||typeof e=="string"?c=e:e&&(c=e.join("/"));let l,d;for(l=0;l<r.retry.attempts;l++){let p;try{d=await r.tryQuery(`${c}`,a,n,i)}catch(g){if(g instanceof h)p=g.data;else throw g}if(d||!r.canRetry(p))break;await r.sleep(r.retry.timeout)}return d?.data}}class A extends r{async autoCompleteName(e){return(await this.query("cards/autocomplete",{q:e}))?.data??[]}async byArenaId(e){return this.query(["cards/arena",e])}async byId(e){return this.query(["cards",e])}async byMtgoId(e){return this.query(["cards/mtgo",e])}async byMultiverseId(e){return this.query(["cards/multiverse",e])}async byName(e,a,n=!1){let i=n,c=a;return typeof a=="boolean"&&(i=a,c=void 0),this.query("cards/named",{[i?"fuzzy":"exact"]:e,set:c})}async bySet(e,a,n){const i=["cards",e,a];return n&&i.push(n),this.query(i)}async byTcgPlayerId(e){return this.query(["cards/tcgplayer",e])}async collection(...e){const a=[];for(let n=0;n<e.length;n+=75){const i={identifiers:e.slice(n,n+75)},c=await this.query("cards/collection",void 0,i);a.push(...c?.data??[])}return a}async random(){return this.query("cards/random")}search(e,a){return new j(this,"cards/search",{q:e,...typeof a=="number"?{page:a}:{page:1,...a}})}}const O=new A;class M extends r{async artifactTypes(){return(await this.query("catalog/artifact-types"))?.data??[]}async artistNames(){return(await this.query("catalog/artist-names"))?.data??[]}async cardNames(){return(await this.query("catalog/card-names"))?.data??[]}async creatureTypes(){return(await this.query("catalog/creature-types"))?.data??[]}async enchantmentTypes(){return(await this.query("catalog/enchantment-types"))?.data??[]}async landTypes(){return(await this.query("catalog/land-types"))?.data??[]}async loyalties(){return(await this.query("catalog/loyalties"))?.data??[]}async planeswalkerTypes(){return(await this.query("catalog/planeswalker-types"))?.data??[]}async powers(){return(await this.query("catalog/powers"))?.data??[]}async spellTypes(){return(await this.query("catalog/spell-types"))?.data??[]}async toughnesses(){return(await this.query("catalog/toughnesses"))?.data??[]}async watermarks(){return(await this.query("catalog/watermarks"))?.data??[]}async wordBank(){return(await this.query("catalog/word-bank"))?.data??[]}}const H=new M;class J extends r{async byArenaId(e){return(await this.query(["cards/arena",e,"rulings"]))?.data??[]}async byId(e){return(await this.query(["cards",e,"rulings"]))?.data??[]}async byMtgoId(e){return(await this.query(["cards/mtgo",e,"rulings"]))?.data??[]}async byMultiverseId(e){return(await this.query(["cards/multiverse",e,"rulings"]))?.data??[]}async bySet(e,a){return(await this.query(["cards",e,`${a}`,"rulings"]))?.data??[]}}const K=new J;class V extends r{async all(){return(await this.query("sets"))?.data??[]}async byCode(e){return await this.query(["sets",e])}async byId(e){return this.query(["sets",e])}async byTcgPlayerId(e){return this.query(["sets/tcgplayer",e])}}const W=new V;class X extends r{async all(){return(await this.query("symbology"))?.data??[]}async parseMana(e){return await this.query("symbology/parse-mana",{cost:e})}}const Y=new X;var w=(s=>(s[s.black=0]="black",s[s.borderless=1]="borderless",s[s.gold=2]="gold",s[s.silver=3]="silver",s[s.white=4]="white",s))(w||{}),o=(s=>(s[s.oracle_cards=0]="oracle_cards",s[s.unique_artwork=1]="unique_artwork",s[s.default_cards=2]="default_cards",s[s.all_cards=3]="all_cards",s[s.rulings=4]="rulings",s))(o||{}),b=(s=>(s[s.standard=0]="standard",s[s.future=1]="future",s[s.historic=2]="historic",s[s.pioneer=3]="pioneer",s[s.modern=4]="modern",s[s.legacy=5]="legacy",s[s.pauper=6]="pauper",s[s.vintage=7]="vintage",s[s.penny=8]="penny",s[s.commander=9]="commander",s[s.brawl=10]="brawl",s[s.duel=11]="duel",s[s.oldschool=12]="oldschool",s))(b||{}),v=(s=>(s[s.legendary=0]="legendary",s[s.miracle=1]="miracle",s[s.nyxtouched=2]="nyxtouched",s[s.draft=3]="draft",s[s.devoid=4]="devoid",s[s.tombstone=5]="tombstone",s[s.colorshifted=6]="colorshifted",s[s.inverted=7]="inverted",s[s.sunmoondfc=8]="sunmoondfc",s[s.compasslanddfc=9]="compasslanddfc",s[s.originpwdfc=10]="originpwdfc",s[s.mooneldrazidfc=11]="mooneldrazidfc",s[s.moonreversemoondfc=12]="moonreversemoondfc",s[s.showcase=13]="showcase",s[s.extendedart=14]="extendedart",s))(v||{}),q=(s=>(s[s.paper=0]="paper",s[s.arena=1]="arena",s[s.mtgo=2]="mtgo",s))(q||{}),_=(s=>(s[s.normal=0]="normal",s[s.split=1]="split",s[s.flip=2]="flip",s[s.transform=3]="transform",s[s.modal_dfc=4]="modal_dfc",s[s.meld=5]="meld",s[s.leveler=6]="leveler",s[s.class=7]="class",s[s.saga=8]="saga",s[s.adventure=9]="adventure",s[s.planar=10]="planar",s[s.scheme=11]="scheme",s[s.vanguard=12]="vanguard",s[s.token=13]="token",s[s.double_faced_token=14]="double_faced_token",s[s.emblem=15]="emblem",s[s.augment=16]="augment",s[s.host=17]="host",s[s.art_series=18]="art_series",s[s.reversible_card=19]="reversible_card",s))(_||{}),y=(s=>(s[s.legal=0]="legal",s[s.not_legal=1]="not_legal",s[s.restricted=2]="restricted",s[s.banned=3]="banned",s))(y||{}),f=(s=>(s[s.tourney=0]="tourney",s[s.prerelease=1]="prerelease",s[s.datestamped=2]="datestamped",s[s.planeswalkerdeck=3]="planeswalkerdeck",s[s.buyabox=4]="buyabox",s[s.judgegift=5]="judgegift",s[s.event=6]="event",s[s.convention=7]="convention",s[s.starterdeck=8]="starterdeck",s[s.instore=9]="instore",s[s.setpromo=10]="setpromo",s[s.fnm=11]="fnm",s[s.openhouse=12]="openhouse",s[s.league=13]="league",s[s.draftweekend=14]="draftweekend",s[s.gameday=15]="gameday",s[s.release=16]="release",s[s.intropack=17]="intropack",s[s.giftbox=18]="giftbox",s[s.duels=19]="duels",s[s.wizardsplaynetwork=20]="wizardsplaynetwork",s[s.premiereshop=21]="premiereshop",s[s.playerrewards=22]="playerrewards",s[s.gateway=23]="gateway",s[s.arenaleague=24]="arenaleague",s))(f||{}),k=(s=>(s[s.common=0]="common",s[s.uncommon=1]="uncommon",s[s.rare=2]="rare",s[s.mythic=3]="mythic",s))(k||{}),m=(s=>(s[s.token=0]="token",s[s.meld_part=1]="meld_part",s[s.meld_result=2]="meld_result",s[s.combo_piece=3]="combo_piece",s))(m||{}),I=(s=>(s[s.core=0]="core",s[s.expansion=1]="expansion",s[s.masters=2]="masters",s[s.masterpiece=3]="masterpiece",s[s.from_the_vault=4]="from_the_vault",s[s.spellbook=5]="spellbook",s[s.premium_deck=6]="premium_deck",s[s.duel_deck=7]="duel_deck",s[s.draft_innovation=8]="draft_innovation",s[s.treasure_chest=9]="treasure_chest",s[s.commander=10]="commander",s[s.planechase=11]="planechase",s[s.archenemy=12]="archenemy",s[s.vanguard=13]="vanguard",s[s.funny=14]="funny",s[s.starter=15]="starter",s[s.box=16]="box",s[s.promo=17]="promo",s[s.token=18]="token",s[s.memorabilia=19]="memorabilia",s))(I||{}),x=(s=>(s[s.name=0]="name",s[s.set=1]="set",s[s.released=2]="released",s[s.rarity=3]="rarity",s[s.color=4]="color",s[s.usd=5]="usd",s[s.tix=6]="tix",s[s.eur=7]="eur",s[s.cmc=8]="cmc",s[s.power=9]="power",s[s.toughness=10]="toughness",s[s.edhrec=11]="edhrec",s[s.artist=12]="artist",s))(x||{}),$=(s=>(s[s.auto=0]="auto",s[s.asc=1]="asc",s[s.desc=2]="desc",s))($||{}),N=(s=>(s[s.cards=0]="cards",s[s.art=1]="art",s[s.prints=2]="prints",s))(N||{});t.Border=w,t.BulkDataTypes=o,t.CardIdentifierBuilder=z,t.Cards=O,t.Catalog=H,t.Format=b,t.FrameEffect=v,t.Game=q,t.Layout=_,t.Legality=y,t.MagicQueryError=h,t.PromoType=f,t.Rarity=k,t.RelatedCardComponent=m,t.Rulings=K,t.SetType=I,t.Sets=W,t.Sort=x,t.SortDirection=$,t.Symbology=Y,t.UniqueStrategy=N,Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})});
@@ -0,0 +1,28 @@
1
+ export declare class CardIdentifierBuilder {
2
+ static byId(id: any): {
3
+ id: any;
4
+ };
5
+ static byIllustrationId(id: any): {
6
+ illustration_id: any;
7
+ };
8
+ static byMtgoId(id: any): {
9
+ mtgo_id: any;
10
+ };
11
+ static byMultiverseId(id: any): {
12
+ multiverse_id: any;
13
+ };
14
+ static byName(name: any, set: any): {
15
+ name: any;
16
+ set: any;
17
+ } | {
18
+ name: any;
19
+ set?: never;
20
+ };
21
+ static byOracleId(id: any): {
22
+ oracle_id: any;
23
+ };
24
+ static bySet(set: any, collectorNumber: any): {
25
+ collector_number: string;
26
+ set: any;
27
+ };
28
+ }
@@ -0,0 +1,17 @@
1
+ import MagicPageResult from "../query/MagicPageResult";
2
+ import MagicQuery from "../query/MagicQuery";
3
+ declare class Cards extends MagicQuery {
4
+ autoCompleteName(name: any): Promise<any>;
5
+ byArenaId(id: any): Promise<unknown>;
6
+ byId(id: any): Promise<unknown>;
7
+ byMtgoId(id: any): Promise<unknown>;
8
+ byMultiverseId(id: any): Promise<unknown>;
9
+ byName(name: any, set: any, fuzzy?: boolean): Promise<unknown>;
10
+ bySet(setCode: any, collectorNumber: any, lang: any): Promise<unknown>;
11
+ byTcgPlayerId(id: any): Promise<unknown>;
12
+ collection(...identifiers: any[]): Promise<any[]>;
13
+ random(): Promise<unknown>;
14
+ search(query: any, options: any): MagicPageResult<unknown, this, unknown>;
15
+ }
16
+ declare const _default: Cards;
17
+ export default _default;
@@ -0,0 +1,18 @@
1
+ import MagicQuery from "../query/MagicQuery";
2
+ declare class Catalog extends MagicQuery {
3
+ artifactTypes(): Promise<any>;
4
+ artistNames(): Promise<any>;
5
+ cardNames(): Promise<any>;
6
+ creatureTypes(): Promise<any>;
7
+ enchantmentTypes(): Promise<any>;
8
+ landTypes(): Promise<any>;
9
+ loyalties(): Promise<any>;
10
+ planeswalkerTypes(): Promise<any>;
11
+ powers(): Promise<any>;
12
+ spellTypes(): Promise<any>;
13
+ toughnesses(): Promise<any>;
14
+ watermarks(): Promise<any>;
15
+ wordBank(): Promise<any>;
16
+ }
17
+ declare const _default: Catalog;
18
+ export default _default;
@@ -0,0 +1,10 @@
1
+ import MagicQuery from "../query/MagicQuery";
2
+ declare class Rulings extends MagicQuery {
3
+ byArenaId(id: any): Promise<any>;
4
+ byId(id: any): Promise<any>;
5
+ byMtgoId(id: any): Promise<any>;
6
+ byMultiverseId(id: any): Promise<any>;
7
+ bySet(setCode: any, collectorNumber: any): Promise<any>;
8
+ }
9
+ declare const _default: Rulings;
10
+ export default _default;
@@ -0,0 +1,9 @@
1
+ import MagicQuery from "../query/MagicQuery";
2
+ declare class Sets extends MagicQuery {
3
+ all(): Promise<any>;
4
+ byCode(code: any): Promise<any>;
5
+ byId(id: any): Promise<any>;
6
+ byTcgPlayerId(id: any): Promise<any>;
7
+ }
8
+ declare const _default: Sets;
9
+ export default _default;
@@ -0,0 +1,7 @@
1
+ import MagicQuery from "../query/MagicQuery";
2
+ declare class Symbology extends MagicQuery {
3
+ all(): Promise<any>;
4
+ parseMana(shorthand: any): Promise<any>;
5
+ }
6
+ declare const _default: Symbology;
7
+ export default _default;
@@ -0,0 +1,3 @@
1
+ export declare class MagicQueryError extends Error {
2
+ constructor(data: any);
3
+ }
@@ -0,0 +1,10 @@
1
+ export * from "./api/CardIdentifierBuilder";
2
+ export { default as Cards } from "./api/Cards";
3
+ export { default as Catalog } from "./api/Catalog";
4
+ export { default as Rulings } from "./api/Rulings";
5
+ export { default as Sets } from "./api/Sets";
6
+ export { default as Symbology } from "./api/Symbology";
7
+ export * from "./error/MagicQueryError";
8
+ export * from "./query/MagicPageResult";
9
+ export * from "./query/MagicQuery";
10
+ export * from "./types";
@@ -0,0 +1,12 @@
1
+ export default class MagicPageResult {
2
+ constructor(q: any, apiPath: any, query: any, post: any);
3
+ _hasMore: boolean;
4
+ _count: number;
5
+ get count(): number;
6
+ get hasMore(): boolean;
7
+ all(): Promise<any[]>;
8
+ get(limit: any): Promise<any[]>;
9
+ next(): Promise<any>;
10
+ page(page: any): Promise<any>;
11
+ setNextPage(): void;
12
+ }
@@ -0,0 +1,13 @@
1
+ export default class MagicQuery {
2
+ static retry: {
3
+ attempts: number;
4
+ };
5
+ static endpoint: string;
6
+ static lastQuery: number;
7
+ static rateLimit: number;
8
+ static canRetry(error: any): any;
9
+ static debounce(): Promise<void>;
10
+ static sleep(ms?: number): Promise<unknown>;
11
+ static tryQuery(apiPath: any, query: any, post: any, requestOptions: any): Promise<import("axios").AxiosResponse<any, any>>;
12
+ query(apiPath: any, query: any, post: any, requestOptions: any): Promise<any>;
13
+ }
@@ -0,0 +1 @@
1
+ export declare var Border: any;
File without changes
File without changes
@@ -0,0 +1 @@
1
+ export declare var BulkDataTypes: any;
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1 @@
1
+ declare var Colors: any;
@@ -0,0 +1 @@
1
+ export declare var Format: any;
@@ -0,0 +1 @@
1
+ export declare var FrameEffect: any;
@@ -0,0 +1 @@
1
+ export declare var Game: any;
File without changes
File without changes
@@ -0,0 +1 @@
1
+ export declare var Layout: any;
File without changes
@@ -0,0 +1 @@
1
+ export declare var Legality: any;
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1 @@
1
+ export declare var PromoType: any;
File without changes
File without changes
@@ -0,0 +1 @@
1
+ export declare var Rarity: any;
File without changes
@@ -0,0 +1 @@
1
+ export declare var RelatedCardComponent: any;
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1 @@
1
+ export declare var SetType: any;
@@ -0,0 +1 @@
1
+ export declare var Sort: any;
@@ -0,0 +1 @@
1
+ export declare var SortDirection: any;
File without changes
@@ -0,0 +1 @@
1
+ export declare var UniqueStrategy: any;